gnome终端cmd在关闭父窗口后保持进程打开



下面的简单命令应该演示我的问题:

gnome-terminal --tab -t "Tab 1" -e "/bin/bash" --tab -t "Tab 2" -e "/bin/bash"

这将打开一个包含两个选项卡和一个活动bashshell的新窗口。如果我立即使用GUI[x]关闭这个新窗口,然后执行一个ps命令,那么(在本例中)一个子进程(/bin/bash)将保持打开状态。我发现这对应于所有在某个时间点从未激活(通过单击它们)的非活动选项卡。因此,如果我们制作了一个类似于上面例子的新命令,但使用了5个选项卡而不是2个选项卡,并且您在运行该命令后立即关闭了该窗口,那么4个子进程将继续运行。这是特别的部分。。。如果单击每个选项卡使其处于活动状态,然后关闭窗口,那么所有子进程都将被杀死,正如人们所期望的那样。

这是gnome终端中的一个错误吗?

我如何确保这些流程是关闭的而不是打开的?

运行方式如下:

gnome-terminal --tab -t "Tab 1" -e "bash -ic 'echo Hello; exec bash'" --tab -t "Tab 2" -e "bash -ic 'echo Hello; exec bash'"

你需要在;bash,您可以将"echo Hello"更改为任何其他名称。

最新更新