第六章Linux使用基础详解.ppt
文本预览下载声明
* §6.4 Linux Shell 编程基础 编辑好的 shell 脚本程序,可以直接用以下方式执行: $sh a.shell 或者先将该脚本文件设置为可执行,然后直接运行该文件。如下所示: $chmod +x a.shell $./a.shell shell 脚本程序中以#开头的句子表示注释,直到这一行的结束。 * §6.4 Linux Shell 编程基础 对 shell 来讲,所有变量的取值都是一个字符串,shell 程序采用$var的形式来引用名为 var 的变量的值。 Shell 有以下几种基本类型的变量: shell 定义的环境变量 用户定义的变量 位置参数 预定义变量 1. shell 程序的变量和参数 * §6.4 Linux Shell 编程基础 shell 在开始执行时就已经定义了一些和系统的工作环境有关的变量,这些变量用户还可以重新定义,常用的 shell环境变量有: HOME:用于保存目录的完全路径名。 PATH:用于保存用冒号分隔的目录路径名,shell 将按 PATH 变量中给出的顺序搜索这些目录,找到的第一个与命令名称一致的可执行文件将被执行。 TERM:终端的类型。 UID:当前用户的标识符,取值是由数字构成的字符串。 PWD:当前工作目录的绝对路径名,该变量的取值随 cd 命令的使用而变化。 shell 定义的环境变量 * §6.4 Linux Shell 编程基础 环境下默认的特殊符号所代表的意义: \d 日期,格式为 weekday month date,例如:Mon Aug 1 \H 完整的主机名称。例如:我的机器名称为:fc4.linux,则这个名称就是 fc4.linux \h 仅取主机的第一个名字,如上例,则为 fc4,.linux 则被省略 \t 显示时间为 24 小时格式,如:HH:MM:SS \T 显示时间为 12 小时格式 \A 显示时间为 24 小时格式:HH:MM \u 当前用户的账号名称 \v BASH 的版本信息 * §6.4 Linux Shell 编程基础 \w 完整的工作目录名称,主目录会以 ~代替 \W 取得工作目录名称,只会列出最后一个目录 \# 下达的第几个命令 \$ 提示字符,如果是 root 时提示符为:# ,普通用户则为$ 【例】下面的命令将使主提示符为在方括号中依次显示 24 小时格式的时间,全称主机名,@,全称工作目录,当前命令编号以及$提示符: PS1=[\t \H@\w\#]\$ * §6.4 Linux Shell 编程基础 在 shell 接收用户输入命令的过程中,如果用户在输入行的末尾输入“\”然后回车,或者当用户按回车键时 shell 判断出用户输入的命令没有结束时,显示这个辅助提示符,提示用户继续输入命令的其余部分,缺省的辅助提示符是“”。 * §6.4 Linux Shell 编程基础 (2) 用户定义的变量 变量名=变量值 【注意】等号两边一定不能留空格,若变量中本身就包含了空格,则整个字符串都要用双引号括起来,有时候变量不容易区分,要用花括号括起来。 $WEEK=Satur $echo Today is $WEEKday Today is $echo Today is ${WEEK}day Today is Saturday 在编写 shell 程序时,为了使变量名和命令名相区别,建议变量名都用大写字母来表示。 只读变量: readly 变量名 * §6.4 Linux Shell 编程基础 export 变量名 一般建立的变量都只是当前 shell 的局部变量,所以不能被 shell 运行的其他命令或shell 程序所利用,export命令可以将一局部变量提供给 shell执行的其他命令使用。 也可以在给变量赋值的同时使用 export 命令: export 变量名=变量值 使用 export说明的变量,在 shell 以后运行的所有命令或程序中都可以访问到。 * §6.4 Linux Shell 编程基础 是在程序名之后输入的参数,参数之间用空格分隔,shell 取第一个位置参数替换脚本程序文件中的$1,第二个替换$2,依次类推。$0 是一个特殊的变量,它的内容是当前这个 shell 程序的文件名,所以,$0 不是一个位置参数,在
显示全部