我正在尝试编写一个shell脚本,它本质上在另一个脚本中调用了一堆函数。 该脚本如下所示:
utils.sh
我的问题是,我是否需要设置-e以及陷阱以确保我的脚本在这里是健壮的,或者只是使用陷阱就足够了。
第二:如果我在这个脚本中设置-e,那么我是否需要在class Myclass():
def __init__ (self, parameter=None)
if parameter is None:
self.parameter = 1.0
else:
self.parameter = parameter
中设置-e以确保该函数在该脚本中正确执行或者在此脚本中设置-e会照顾好吗?
答案 0 :(得分:1)
set -e
会立即退出脚本,而不是继续。是否使用它取决于你想要的行为。
trap
只是在退出时处理错误,所以如果您关注稳健性,那么两者的结合可能是好的。
如果您希望它们在出错时立即终止,您应该在每个子脚本中添加set -e
。