如何在另一个虚拟终端中检查 X 服务器的 PID?

如何在另一个虚拟终端中检查 X 服务器的 PID?

我正在尝试在另一个虚拟终端上的裸 X 服务器中打开一个程序。我使用的是 ubuntu 9.10。

我正在使用的命令是这个。

openvt -f -s -- `X :2 & '/path/to/program' -display :2`;

现在,当程序关闭时,我希望 X 服务器也被关闭。

所以我的问题是:我怎样才能保存新的 X 服务器 (X:2) 的 PID,然后稍后将其杀死?

它将会在普通的 shell 脚本中使用。

答案1

除了使用 openvt,您还可以使用西风打开嵌套的 X 会话。这样以后管理起来会更方便。

使用sudo apt-get install xserver-xephyr来安装它。

按照 James 的建议,将其与用来$!获取进程 ID 相结合。

答案2

在 bash 中,$!the process ID of the most recently executed back-ground (asynchronous) command

Sombrero:Documents polleyj$ xterm &
[1] 41316
Sombrero:Documents polleyj$ KILLPID=$!
Sombrero:Documents polleyj$ echo $KILLPID
41316
Sombrero:Documents polleyj$ kill $KILLPID
Sombrero:Documents polleyj$
[1]+  Killed                  xterm
Sombrero:Documents polleyj$

答案3

我所做的是将 pgrep -f 'X :2' 存储在变量 mypid 中。然后我直接杀死了 $mypid。

相关内容