您的位置:首页 > 运维架构 > Shell

shell脚本特殊变量($0、$1、$2、 $?、 $# 、$@、 $*)

2018-03-06 15:23 537 查看
$0        Shell本身的文件名
$1~$n 添加到Shell的各参数值。$1是第1参数、$2是第2参数…
$$        Shell本身的PID(ProcessID) 
$!         Shell最后运行的后台Process的PID
$?        上个命令的退出状态,或函数的返回值$- 使用Set命令设定的Flag一览
$*         所有参数列表,不包括脚本本身。如"$*"用「"」括起来的情况、以"$1 $2 … $n"的形式输出所有数。
$@       所有参数列表。如"$@"用「"」括起来的情况、以"$1" "$2" … "$n" 的形式输出所有参数。
$#        Shell的参数个数

注:$@和$* 只在被双引号包起来的时候才会有差异
       双引号括起来的情况:
       $*将所有的参数认为是一个字段

       $@以IFS(默认为空格)来划分字段,
for k in "$@"循环次数是参数个数

for arg in "$*" 只进行一次循环
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: