我会在bash脚本中有一个很大的try/catch之类的东西(如果出现问题,我想触发一个URL)。像这样:
我知道
set -e
存在,但是它只是停止了脚本(完成了一半的工作)。也许trap
带有某些内容,但我不了解我对此的了解。 在这种情况下,有没有简单的例子? 我的问题显然不是关于触发URL,而是如何捕获错误然后运行脚本的另一部分。
最佳答案
使用set -e
,如果脚本错误退出,则可以捕获ERR
伪信号并执行curl
语句。如果所有任务都成功,则不会触发ERR
陷阱。
set -e
trap on_error ERR
on_error () {
curl $some_url
}
task_1
task_2
# ...
task_last