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

来源:互联网 发布:linux vi 到文件底部 编辑:程序博客网 时间:2024/06/05 15:28

我们先写一个简单的脚本,执行以后再解释各个变量的意义
touch zhaojd.sh
vi zhaojd.sh
脚本内容如下:

#!/bin/shecho "number:$#"echo "shname:$0"echo "first :$1"echo "second:$2"echo "argume:$@"echo "show parm list:$*"echo "show process id:$$"echo "show precomm stat: $?"

保存退出
赋予脚本执行权限

chmod +x zhaojd.sh

执行脚本

./zhaojd.sh aa bbnumber:2scname:./zhaojd.shfirst:aasecond:bbargume:aa bbshow parm list:aa bbshow process id:24544show precomm stat:0

通过显示结果可以看到:

$# 是传给脚本的参数个数$0 是脚本本身的名字$1 是传递给该shell脚本的第一个参数$2 是传递给该shell脚本的第二个参数$@ 是传给脚本的所有参数的列表$* 是以一个单字符串显示所有向脚本传递的参数,与位置变量不同,参数可超过9$$ 是脚本运行的当前进程ID$? 是显示最后命令的退出状态,0表示没有错误,其他表示有错误
0 0
原创粉丝点击