shell 的变量
一、自定义变量
1、字母或者下划线开头,由字母、数字、下划线组成,大小写敏感,在使用变量时,要在变量前加上前缀 $,一般变量由大写字母表示,并且英文开头,"=" 两边应没有空格。如 NUM=9、STR="hello"
2、可以将一个命令的执行结果复制给变量,但是需要命令替换符号( 命令替换符是 Tab 键的上面那一个键。例:A1=`ls -l`,此时就把 ls -l 的执行结果给了 A1 这个变量。)。
3、双引号和单引号的区别:" " 号是会把里面的变量复制进行输出( 也就是说双引号会识别里面的变量 ),' ' 号是会把内容原封不动的输出,不会识别里面的变量
4、使用 set 命令查看所有变量
5、使用 unset 命令删除指定的变量
二、占位变量
在 Shell 里面有两种特殊的变量,一种是位置变量,一种是特殊变量,在编写 Shell 的时候十分常用。
1、位置变量
Shell 脚本代码如下,其中 $1 和 $2 相当于两个占位符。运行该脚本时要给两个参数来替换这两个占位符。( 一个脚本最多 9 个占位符 )
#!/bin/sh /bin/ls -l $1 /bin/ls -l $2
执行脚本,两个参数分别为 /test1 和 /test2,用空格分开
sh hello.sh /test1 /test2
三、特殊变量
1、$* :本程序的所有参数
2、$# :本程序的参数个数
3、$$ :本程序的 PID
4、$! :上一个后台命令的 PID
5、$? :上一个命令的返回值
6、$(0-9) :显示指定下标的位置变量