什么是$? shell脚本中$ 0 $ 1 $ 2的意思是?
我经常碰到$? $0 $1 $2 etc....
$? $0 $1 $2 etc....
在shell脚本中,我知道的是$?
返回最后一个命令的退出状态
echo "this will return 0" echo $?
但其他人做了什么? 他们叫什么,还有更多? 也许就像$ 3 $ 4 $ 5 …
这些是脚本的位置参数。
执行
./script.sh Hello World
会做出
$0 = script.sh $1 = Hello $2 = World
他们被称为位置参数 。
3.4.1位置参数
位置参数是由一个或多个数字表示的参数,而不是单个数字0.位置参数在被调用时从shell的参数中分配,并且可以使用set builtin命令重新分配。 位置参数N可以被引用为$ {N},或者当N由单个数字组成时,作为$ N。 位置参数不能用赋值语句赋值。 set和shift builtins用于设置和取消设置(参见Shell Builtin命令)。 当执行一个shell函数时,位置参数会暂时被replace(请参阅Shell函数)。
当一个位数超过一位数字的参数被展开时,它必须用大括号括起来。