位置参数是用一位或多位数字(除了0)表示的参数,位置参数N可以引用为${N},或者当N由单个数字组成时,引用为$N
位置参数是在调用shell时从shell参数中分配的
$ bash -s a b c
$ echo $1 $2 $3
a b c
$ cat script
echo $1 $2 $3
$ bash script a b c
a b c
在执行shell函数时临时替换位置参数
$ bash -s a b c
$ func () { echo $1 $2 $3; }
$ func e d f
e d f
$ echo $1 $2 $3
a b c
set内置命令可以重新为位置参数赋值,set和shift内置命令还可以撤销位置参数
$ set -- e f g
$ echo $1 $2 $3
e f g
位置参数不能用赋值语句赋值
$ $1=123
e=123: command not found
$ set --
$ echo $1 $2 $3
$ set -- e f g
$ shift 1
$ echo $1 $2 $3
f g
$ shift $
$ echo $1 $2 $3
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)