$n:n代表一个数字,指执行脚本的第n个参数。特别地,$0指执行的文件名
[root@ipha-dev71-1 exercise_shell]# cat test.sh #!/bin/bash echo "shell 传递参数实例!" echo "执行的文件名:$0"; echo "第一个参数为:$1"; echo "第二个参数为:$2"; echo "第三个参数为:$3"; [root@ipha-dev71-1 exercise_shell]# ./test.sh 1 2 3 shell 传递参数实例! 执行的文件名:./test.sh 第一个参数为:1 第二个参数为:2 第三个参数为:3
$#:传递到脚本的参数个数
$*:以一个单字符串显示所有向脚本传递的参数 如 $1 $2 … $n
[root@ipha-dev71-1 exercise_shell]# cat test.sh #!/bin/bash echo "shell 传递参数实例!" echo "第一个参数为:$1"; echo "参数个数为:$#"; echo "第二个参数为:$2"; echo "传递的参数作为一个字符串显示:$*"; [root@ipha-dev71-1 exercise_shell]# ./test.sh 1 2 3 shell 传递参数实例! 第一个参数为:1 参数个数为:3 第二个参数为:2 传递的参数作为一个字符串显示:1 2 3
$* 与 $@的区别:只有在双引号中体现出来。假设在脚本运行时写了三个参数 1、2、3,,则 " * " 等价于 "1 2 3"(传递了一个参数),而 "@" 等价于 "1" "2" "3"(传递了三个参数)
$?:上一条命令执行后的状态,结果为0表示执行正常,结果为1表示执行异常;