Bash

後台重定向

  • April 5, 2020

我用 Python 編寫了一些程序來列印一些消息。我希望該程序進入後台並在文件中列印其消息。所以我在 bash 中寫道:python program > message &. 問題:只有在我中斷程序時才會出現消息(使用 cat 或 vi)。有人可以向我解釋問題出在哪裡,是否有簡單的解決方案?

當 Python 的輸出不是 tty 時,它使用完全緩衝。

使用 – 執行程序,python -u這將使 python3 中的 stdout 和 stderr 以及 python2 中的 stdin 無緩衝。

請注意,這與在後台執行的程序無關,而是因為它的標準輸出不是 tty。

沖洗可以幫助你嗎?我希望連結到其他網站不是問題。見https://stackoverflow.com/questions/230751/how-to-flush-output-of-print-function

引用自:https://unix.stackexchange.com/questions/578109