从脚本调用的后台进程在结束后死亡

Background process called from script, dies after it ends

Cygwin 上发生了一些奇怪的事情。 我 运行 一个将一些进程置于后台的脚本。然而剧本一结束,他们就都死了。

简单的例子,拿这个脚本来说:

tail -f logfile.log &

我可以看到 tail 工作(它打印最后的 X 行)但是一旦脚本结束进程就不再在后台了。

在 Linux 它表现不同,知道为什么吗?

我会在 linux 上尝试 nohup *cmd* &。但是您需要考虑传递给 child 的文件描述符。所以 nohup *cmd* </dev/null >/dev/null 2>&1 & 但是 tail -f 输出会去哪里呢?当您退出 shell 时 window 会关闭吗?然后你不能退出shell如果你想看到输出。