位置变量并不是用户自定义的,而在shell中可以直接使用,这样一些约定俗成的规则就可以了。
定义:当一条命令或脚本执行时,后面可以跟多个参数,我们使用位置参数变量来表示这些参数
$n : n为数字,
$0代表脚本本身
$1~$9代表第1~9参数,10以上的参数需要用大括号包含,如:${10}
$@:命令行所有参数,但每个参数区别对待
$*:命令行所有参数,所有参数视为一个整体
$#:参数总个数
$$:脚本运行的当前进程ID号
$*:命令行所有参数,所有参数视为一个整体
$@:命令行所有参数,但每个参数区别对待
# 双引号中"*"和"@"区别 echo "\$*的输出如下:" for i in "$*"; do # 多个参数当成一个参数传递了 echo $i done echo " " echo "\$@的输出如下:" for i in "$@"; do # 多个参数分开传递 echo $i done