在info coreutils 'nohup invocation'
中的nohup文档中,它指出:
Exit status:
125 if `nohup' itself fails, and `POSIXLY_CORRECT' is not set
126 if COMMAND is found but cannot be invoked
127 if COMMAND cannot be found
the exit status of COMMAND otherwise
然而,我从nohup中得到的唯一退出代码是1和0。我有一个在脚本内失败的nohup命令,并且我需要适当地处理异常...根据此文档,我会认为nohup退出代码应该是126。但实际上,它是0。
我正在运行的命令是:
nohup perl myscript.pl &
这是因为perl成功退出吗?
nohup true; echo $?
、nohup false; echo $?
、nohup nonesuch; echo $?
应该会给您一些有效的反馈。祝好运。 - shellterperl myscript.pl
,那么退出代码是什么?如果您的脚本以 0 退出,则 perl 将以 0 退出。Perl 将传递您的脚本的退出代码。如果 Perl 无法运行脚本(例如文件权限无效),则 Perl 本身将以各种错误退出(例如 13)。 - Jim Stewart&
。好答案。 - Jim Stewart