$# 是传给脚本的参数个数
$@ 是传给脚本的所有参数的列表
$
0
是脚本本身的名字
$
1
是传递给该shell脚本的第一个参数
$
2
是传递给该shell脚本的第二个参数
$$ 是脚本运行的当前进程ID号
$* 是以一个单字符串显示所有向脚本传递的参数,与位置变量不同,参数可超过
9
个
$? 是显示最后命令的退出状态,
0
表示没有错误,其他表示有错误
例子一
##dels.sh
echo "number:$#" echo "scname:$0" echo "first :$1" echo "second:$2" echo "argume:$@" echo "show parm list:$*" echo "show process id:$$" echo "show precomm stat: $?"
执行结果
1
2
3
4
5
6
7
8
9
|
[@jihite]$ sh del.sh
1
2
3
number:
3
scname:del.sh
first:
1
second:
2
argume:
1
2
3
show
parm list:
1
2
3
show
process id:
21057
show
precomm stat:
0
|
对于实例中的三个参数输入而言,$@:表示为“1 2 3”,对于$*:表示为“1” “2” “3”。