为什么我的 Perl 脚本以 137 退出?

发布于 2024-07-25 14:32:44 字数 185 浏览 6 评论 0原文

有没有办法消除 Perl 中的警告(退出代码 137)? 我正在 Linux 上的另一个 shell 脚本中运行 Perl 脚本。 此 Perl 脚本退出时出现警告和退出代码 137。我无法确定退出代码 137 代表什么。

避免此警告的最佳方法是什么? 我在脚本中尝试了“无警告”,并且 Perl 脚本末尾也有一个退出 0。

Is there a way to eliminate a warning (exit code 137) in perl? I am running a Perl script on linux within another shell script. This Perl script exits with a warning and exit code 137. I could not pinpoint what exit code 137 stands for.

What is the best way to avoid this warning? I tried "no warnings" in the script and I have an exit 0 at the end of my Perl script as well.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

苏别ゝ 2024-08-01 14:32:44

137=128+9,这意味着其他进程向您发送了信号9,即SIGKILL。 也就是说,另一个脚本杀死了你的脚本,这就是它的样子。

137=128+9, which means some other process has sent you a signal 9, which is SIGKILL. I.e. the other script kills yours, that's what it looks like.

谢绝鈎搭 2024-08-01 14:32:44

我刚刚在启动 python 脚本时遇到了相同的退出代码 137。
结果是 OOM 杀手介入,向 python 解释器发送 SIGKILL。
如果是同样的原因,你可以在 /var/log/messages 中找到 oom msgs

I just ran into the same exit code 137 when launching a python script.
It turns out to be the OOM killer kicking in, sending SIGKILL to python interpreter.
If it's the same cause, you can find oom msgs in /var/log/messages

酒绊 2024-08-01 14:32:44

我从 ANT 脚本中得到了相同的错误代码 137。 查看 /var/log/messages,我知道这是内存不足错误。

Jun 21 07:33:30 myhost kernel: Out of memory: Kill process 52959 (java) score 164 or sacrifice child
Jun 21 07:33:30 myhost kernel: Killed process 52959 (java) total-vm:709496kB, anon-rss:397016kB, file-rss:0kB

I got the same error code 137 from an ANT script. Looking at /var/log/messages, I understand it's out of memory error.

Jun 21 07:33:30 myhost kernel: Out of memory: Kill process 52959 (java) score 164 or sacrifice child
Jun 21 07:33:30 myhost kernel: Killed process 52959 (java) total-vm:709496kB, anon-rss:397016kB, file-rss:0kB
关于从前 2024-08-01 14:32:44

我怀疑退出警告是由调用 perl 程序的 shell 打印出来的,而不是由 perl 程序本身打印出来的,因此 perl 代码中的“无警告”对您没有帮助。 退出代码 137 意味着它被 SIGKILL 信号杀死。

I suspect the exit warning is printed out by the shell which called the perl program, not by the perl program itself, so "no warnings" in the perl code won't help you. exit code 137 means it was killed with a SIGKILL signal.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文