簡體   English   中英

為什么我的Perl腳本退出137?

[英]Why does my Perl script exit with 137?

有沒有辦法消除perl中的警告(退出代碼137)? 我在另一個shell腳本中運行Linux上的Perl腳本。 此Perl腳本以警告和退出代碼137退出。我無法確定退出代碼137代表什么。

避免此警告的最佳方法是什么? 我在腳本中嘗試了“沒有警告”,並且在我的Perl腳本末尾也有一個退出0。

137 = 128 + 9,這意味着其他一些進程發送了一個信號9,即SIGKILL。 即另一個腳本殺死你的,這就是它的樣子。

我在啟動python腳本時遇到了相同的退出代碼137。 事實證明,這是OOM的殺手,將SIGKILL發送給python解釋器。 如果它是相同的原因,您可以在/ var / log / messages中找到oom msgs

我從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

我懷疑退出警告是由調用perl程序的shell打印出來的,而不是由perl程序本身打印出來的,因此perl代碼中的“no warnings”對你沒有幫助。 退出代碼137表示它被SIGKILL信號殺死。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM