linux中变量$#,$@,$0,$1,$2,$*,$$,$?的含义

来源:互联网 发布:搜达数据 编辑:程序博客网 时间:2024/06/02 00:58
$# 是传给脚本的参数个数
$@ 是传给脚本的所有参数的列表
$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”。
0 0
原创粉丝点击