如何防止“exec zsh”杀死当前正在运行的zsh后台作业?

问题描述 投票:0回答:1

当 zsh 作为终端的当前 shell 运行时,一个或多个子进程作业在 zsh shell 下运行,从该 shell 执行 exec zsh 将杀死所有正在运行的后台作业。

这是预期的吗?这是否意味着当 zsh shell 运行未完成的子进程/后台作业时,某人应该 

never

执行 exec zsh?或者是否可以采取/配置某些措施来防止这种行为?

在(源)脚本中,始终可以检查是否有任何作业正在运行,并且可以交互地在 zsh 提示符中打印正在运行的作业数量,以让用户知道。这些是唯一的可能性吗?

zsh jobs
1个回答
0
投票
exec zsh

不会
杀死后台作业。 > sleep 60 & echo $!; exec zsh [1] 33264 33264 > ps | grep 33264 33264 ttys002 0:00.01 sleep 60 33267 ttys002 0:00.00 grep 33264

© www.soinside.com 2019 - 2024. All rights reserved.