shell 中的$0 $1 $* [email protected] $# $$ $?

By | 03月07日
Advertisement

shell 中的$0 $1 $* [email protected] $# $$ $?

$0: 脚本本身文件名称

$1: 命令行第一个参数,$2为第二个,以此类推

$*: 所有参数列表

[email protected]: 所有参数列表

$#: 参数个数

$$: 脚本运行时的PID

$?: 脚本退出码

$*与[email protected]的区别
当命令行为test.sh 1 2 3
"$*"表示"1 2 3"
"[email protected]"表示"1" "2" "3"
二者没有被引号括起来时是一样的都为"1 2 3",只有当被引号括起来后才表现出差异