0

可能重复:
BASH 中的错误处理

我有一个部署脚本,我想在 ubuntu shell 脚本(即 bash 脚本)中进行异常处理。有什么解决方案吗?

4

1 回答 1

0

我不确定您所说的异常处理是什么意思,但是如果您正在寻找trycatch(或类似的东西),那么您就不走运了。有set -e,但我不会说这甚至很接近。我能想到的最接近的是 ERR 信号陷阱(ERR 是假信号)

例如;

trap 'echo [$LINENO] Error: $?' ERR

在这种情况下,我们只显示行号和返回代码,但您可以将任何代码放在引号内,包括函数调用。失败的定义是一个非零的 $?。它不会针对条件或算术结构执行,也不会带入函数中。

陷阱可以通过以下方式“关闭”:

trap – ERR

另请参阅 DEBUG 假信号。

于 2012-10-23T10:22:12.233 回答