バックグラウンドリダイレクト

バックグラウンドリダイレクト

いくつかのメッセージを印刷するためにPythonでいくつかのプログラムを書いた。プログラムがバックグラウンドに移動し、そのメッセージをファイルに印刷したいと思います。だから私はbashに次のように書きましたpython program > message &:問題:プログラムを中断したときにのみ(catまたはviを使用)メッセージが表示されます。問題が何であるか、簡単な解決策があるかどうかを説明できる人はいますか?

ベストアンサー1

Pythonの出力がttyでない場合は、完全なバッファリングを使用します。

-- を使用してプログラムを実行すると、python -upython3のstdoutとstderrとpython2のstdinがバッファリングされなくなります。

これはバックグラウンドで実行されるプログラムとは関係がなく、むしろプログラムのstdoutがttyではないことに注意してください。

おすすめ記事