0

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

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

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

这是 gnome-terminal 中的错误吗?

我怎样才能确保这些进程关闭而不是打开?

4

1 回答 1

0

运行如下:

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”。

于 2014-11-11T12:59:19.093 回答