shell特殊的变量

位置参数变量:

$# 

$@

$*

$0

$1 .... $9

${10}


$#:表示的是传入的参数的个数。

$@:表示的是传入的所有参数,参数以数组的形式存在,可以使用迭代遍历的方式进行遍历输出。

$*: 表示的是传入的所有参数,参数以字符串的形式存在。

(注意 $*和$@之间的区别,只是存在于 使用双引号进行包裹,“$*”  在for循环之中输出的是一个字符串)

例子 for i in "$*"  do echo $i done 和 for j in $* do echo $j done  输出的结果会不同。

$0: 代表的是当前执行的脚本

$1 :表示的是传入的第一个参数

${10} :表示的是传入的第10个参数。 两位数的参数,外面是需要大括号进行包裹的。


预定义变量

$?

代表的是当前执行的脚本。

你可能感兴趣的:(shell特殊的变量)