【发布时间】:2015-07-22 17:40:34
【问题描述】:
我们正在为构建服务器创建一个 bash 脚本。我们希望确保当我们在脚本中执行 bash 命令时,它会返回信号 0。如果没有,我们希望停止执行。到目前为止,我们的解决方案是:
#some command
if [ $? -ne 0 ] ; then
#handle error
fi
在每个命令之后可能会导致此问题。这使得代码很长并且看起来不是很优雅。也许我们可以使用 bash 函数。虽然使用 $?可能有点棘手,我们仍然必须在每个命令之后调用该函数。有没有更好的办法?我查看了 trap 命令,但它似乎只对我正在编写的 bash 脚本进行信号处理,而不是我调用的任何命令。
【问题讨论】:
-
$?是退出代码。退出代码和信号不相关。
标签: bash error-handling signals