$0文件名及路径
$1,$2参数1,参数2
$#传递给脚本或函数的参数个数
$$当前Shell进程ID
$?判断上个命令的执行成功与否,0为成功。
$@传递脚本或函数的所有参数
$*传递脚本或函数的所有参数
${}
注:$@和$*都是传递脚本或函数的所有参数。被双引号" "包含时,两者有区别如下
[root@web01 shell]# cat 007.sh
#!/bin/bash
for var in “$@”
do
echo "$var"
done
[root@web01 shell]# sh 007.sh feng cx xiao
feng
cx
xiao
[root@web01 shell]# cat 007.sh
#!/bin/bash
for var in "$*"
do
echo "$var"
done
[root@web01 shell]# sh 007.sh feng cx xiao
feng cx xiao
$var和${var}区别
如:当你要显示变量值加随意的字符时
echo $var_AA$var会将后面的_AA也当做变量的一部分
echo ${var}_AA${var}不会将后面的_AA当作变量的一部分
原文链接:/bash/391747.html