1. $n
功能描述:n
为数字,$0
代表该脚本名称,$1-$9
代表第一到第九个参数,十以上的参数,十以上的参数需要用大括号包含,如${10}
在parameter.sh
文件里输入
#!/bin/bash
echo '==========$n=========='
echo $0
echo $1
echo $2
再调用这个脚本sh parameter.sh aaa bbb
,就会输出结果
parameter.sh
aaa
bbb
2. $#
功能描述:获取所有输入参数个数,常用于循环,判断参数的个数是否正确
比如在parameter.sh
文件里增加一句echo $#
,
再调用这个脚本sh parameter.sh aaa bbb
,就可以输出结果
2
表示一共传进来2个参数
3. $*
功能描述:这个变量代表命令行中所有的参数,$*
把所有的参数看成一个整体
4. $@
功能描述:这个变量代表命令行中所有的参数,$@
把每个参数区分对待
5. $?
最后一次执行的命令的返回状态。如果这个变量的值为0,证明上一个命令正确执行,否则就表示没有正确执行
[root@cloudmyc test]# test 1=1
[root@cloudmyc test]# echo $?
0
[root@cloudmyc test]# test 1 -gt 1
[root@cloudmyc test]# echo $?
1
先测试1=1,之后输入$?
,得到0,表示1=1的命令是正确的,之后测试1大于1,得到1,表示失败