linux脚中经常会遇到美元符号 ($),以下是他们代表的含义:
$0 shell的命令本身(包括完整路径) ($0 是脚本本身的名字)
$1到$9 数字表示shell 的第几个参数
$# 传递到脚本的参数个数
$* 以一个单字符串显示所有向脚本传递的参数
$$ 脚本运行的ID号
$! 后台运行的最后一个进程的ID号
$@ 与$*相同。
$- 显示shell使用的当前选项。
$? 显示最后命令的执行状况。0表示没有错误。
举个例子:
执行输出:
$0 shell的命令本身(包括完整路径) ($0 是脚本本身的名字)
$1到$9 数字表示shell 的第几个参数
$# 传递到脚本的参数个数
$* 以一个单字符串显示所有向脚本传递的参数
$$ 脚本运行的ID号
$! 后台运行的最后一个进程的ID号
$@ 与$*相同。
$- 显示shell使用的当前选项。
$? 显示最后命令的执行状况。0表示没有错误。
举个例子:
test.sh代码
- #!/bin/bash
- echo "\$0 is: " $0
- echo "\$1 is: " $1
- echo "\$2 is: " $2
- echo "\$* is: " $*
- echo "\$@ is: " $@
- echo "\$# is: " $#
- echo "\$! is: " $!
- echo "\$$ is: " $$
- echo "\$? is: " $?
- $ sudo ./test.sh p1 p2
- $0 is: ./test.sh
- $1 is: p1
- $2 is: p2
- $* is: p1 p2
- $@ is: p1 p2
- $# is: 2
- $! is:
- $$ is: 3469
- $? is: 0