退出异常时状态为0的Ruby脚本

时间:2011-08-24 06:39:29

标签: ruby

我目前用begin; rescue; end包装脚本。哪个有效,但在两个不同的地方取消/评论等等很烦人。在PHP中是否有类似error_reporting(0);的东西,但是应用于退出代码和STDERR输出?

2 个答案:

答案 0 :(得分:2)

您可以尝试捕获EXIT signal

  

特殊信号名称“EXIT”或信号编号0将在程序终止之前调用。

这样的事情应该保证你的脚本总是向操作系统返回零:

Signal.trap('EXIT') { exit 0 }

例如,这个脚本:

Signal.trap('EXIT') { exit 0 }
exit 1
尽管使用exit 1触发脚本终止,

实际上会向操作系统返回零。

答案 1 :(得分:-1)

其实我不明白你的要求。这是我理解的答案。但如果您提供更多细节,将会很有用。

def
  some code...
rescue
  abort
end