pythonインタプリタがSIGTERMシグナルを受け取ったときにstderrに表示される "Terminated"メッセージを抑制することはできますか?私はそれを静かに終わらせたい。pythonスクリプトがSIGTERMを受信したときに終了メッセージを表示させない方法
私はSIGINTなどの別の信号を使用しようとしましたが、この場合、pythonは実行中のスクリプトTracebackと "KeyboardInterrupt"メッセージを出力します。
pythonインタプリタがSIGTERMシグナルを受け取ったときにstderrに表示される "Terminated"メッセージを抑制することはできますか?私はそれを静かに終わらせたい。pythonスクリプトがSIGTERMを受信したときに終了メッセージを表示させない方法
私はSIGINTなどの別の信号を使用しようとしましたが、この場合、pythonは実行中のスクリプトTracebackと "KeyboardInterrupt"メッセージを出力します。
"Terminated"はシェルによって印刷されます。シェルのマニュアルを参照して、それを無効にする方法を確認してください。 SIGINT
については、実際にこれをキャッチすることができます!トレースバックを印刷しないようにするには、単に
try:
do_stuff()
except KeyboardInterrupt:
pass
またはここに示すように、シグナルハンドラを登録するには、あなたのプログラム全体をラップ:How do I capture SIGINT in Python?
bashがTerminatedメッセージを表示しないようにするにはどうすればよいですか?同様の質問はここではできないと述べていますが、あなたができることはstderrを/ dev/nullにリダイレクトすることです。 –
私はそれがトリックを行うべきbashの 'set + m'だと信じています – ch3ka
あなたは 'signals'モジュールで見たことがありますか? – mgilson
はい、私の解決策は、自分自身のシグナルハンドラをインストールし、そこから終了することでした。シェルはTerminatedメッセージを出力しなくなりました。 –
私はそれがうまくいくと思った。 – mgilson