我在 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
短消息。然后该进程应该会消失。