我在 OSX 上看到一些奇怪的螢幕行為。當我退出畫面時,子進程不會被終止。
$ screen
$ tail -f (or some long running process inside screen)
然後,我使用 終止當前螢幕視窗^a k
或完全終止螢幕^a ^\
,看起來一切都很順利:
$ [screen is terminating]
但是,tail -f
仍在運行(PPID 為 1)。為什麼它不是被殺而是成為孤兒?是否有一個設定/標誌可以改變這種行為?我已經在 Ubuntu 下嘗試過了,螢幕表現符合預期。
謝謝!
答案1
我已經看到偽終端的進程將保留在接收輸入之前的位置。若要測試此情況,請在清單中看到延遲進程後ps
,發送wall
簡訊。然後該過程應該會消失。