bash中获取命令结果可以用$?
经常有需求将多个命令封装到一个shell中,并需要在遇到命令失败时就退出,并不执行下一个命令。
1 | #!/bin/bash |
其他特殊变量如下
变量 | 含义 |
---|---|
$0 | 当前脚本的文件名 |
$n | 传递给脚本或函数的参数。n 是一个数字,表示第几个参数。例如,第一个参数是$1,第二个参数是$2 |
$# | 传递给脚本或函数的参数个数。 |
$* | 传递给脚本或函数的所有参数。 |
$@ | 传递给脚本或函数的所有参数。被双引号(“ “)包含时,与 $* 稍有不同 |
$? | 上个命令的退出状态,或函数的返回值。 |
$$ | 当前Shell进程ID。对于 Shell 脚本,就是这些脚本所在的进程ID。 |
有时,makefile也有如此需求,可以写类似代码,不过makefile引用shell变量时,需要多加个$
1 | run: |