shell编程(3) 特殊变量
bash预定义变量
Bash 有一些预定义变量,在编写 Shell 脚本时非常有用
命令参数 | 说 明 |
---|---|
$0 | 获取当前执行的 Shell 脚本的文件名,如果执行脚本包含了路径,那么就包括脚本路径 |
$n | 获取当前执行 Shell 脚本的第 n 个参数值,n=1..9,当 n 为 0 时表示脚本的文件名;如果 n 大于 9,则用大括号括起来,例如${10},接的参数以空格隔开 |
$# | 获取当前执行的 Shell 脚本后面接的参数的总个数 |
$* | 获取当前 Shell 脚本所有传参的参数,将所有的参数视为一个字符串。 |
$@ | 获取当前 Shell 脚本所有传参的参数,将所有的参数视为不同的独立字符串。 |
$? | 获取上一个指令执行状态的返回值,返回值为0表示上一个指令成功,返回非0时表示失败 |
ps:
1)使用$*时,所有参数都被视为一个单词,当使用$@时,每个参数都被视为单独单词;
2)使用 $0 的时候,路径不同输出不同
3)使用 $? 的场景:
- 判断脚本是否执行成功
- 脚本中执行“exit 数字” 则把数字传递给?变量
- 函数中有“return 数字” 则把数字以函数返回值形式传递给?变量
哪有什么胜利可言,坚持意味着一切。如想使用请备注转载链接~