。
比如: bash$ ./hello.sh build test脚本
中$0的值就是。/hello.sh,$1的值是build,$2的值是test。
bash$ list.sh -sh --debug /home/user。脚本中$0的值就是list.sh,$1的值是-sh,$2的值是--debug,$3的值是/home/user。 $0 这个程式
的执行名字。
$n 这个程式的第n个参数值,n=1..9。
$* 这个程式的所有参数,此选项参数可超过9个。
$# 这个程式的参数个数。
$$ 这个程式的PID(脚本运行的当前进程ID号)。
$! 执行上一个背景指令的PID(后台运行的最后一个进程的进程ID号)。
$? 执行上一个指令的返回值 (显示最后命令的退出状态。0表示没有错误,其他任何值表明有错误)。
$- 显示shell使用的当前选项,与set命令功能相同。
$@ 跟$*类似,但是可以当作数组用。首先要明确$符号用在什么地方,使用在不同的地方,其所代表的定义也就不同。比如在bash里$符号表示当前用户为普通用户;在bash脚本里。$开头表示变量。
举例说明,下面是一些特殊的变量:
$# 表示参数个数
$0 是脚本本身的名字
$1 是传递给该shell脚本的第一个参数
$2 是传递给该shell脚本的第二个参数
$@ 表示所有参数,并且所有参数都是独立的
$$ 是脚本运行的当前进程ID号
$? 是显示最后命令的退出状态,0表示没有错误,其他表示有错误美元符加字符串是引用变量值,而美元符加数字表示命令行参数。比如:
bash$ ./hello.sh build test
脚本中$0的值就是./hello.sh,$1的值是build,$2的值是test。
bash$ list.sh -sh --debug /home/user
脚本中$0的值就是list.sh,$1的值是-sh,$2的值是--debug,$3的值是/home/user。
当脚本接受命令行参数时,美元符加数字就可以引用这些参数。
评论列表(0条)