我正在运行两个级别的xterms。在第一级我运行“xterm -e bsub -Ip master.tcl”。 master.tcl脚本使用“xterm -e bsub -Ip slave.tcl”调用另一个xterm。
由于某种原因,当slave.tcl完成执行时,第二个xterm没有关闭。但是,一旦slave脚本完成,第二个xterm会显示以下消息: << JobExitInfo:Job< 128309>成功完成。 >>
此外,在查看LSF系统时,作业不会出现,就像它真的完成一样。但是xterm窗口保持打开状态,而不是关闭。
知道为什么吗?
感谢。
答案 0 :(得分:0)
xterm不太可能保持打开状态,除非还有东西在那里运行。
我会检查(例如使用ps -ef)来查看剩余xterm中仍在运行的进程。如果有某些东西在运行,例如等待输入,xterm将仍然是打开的。
使用ps -ef
(假设这不是BSD系统),您会看到一个标题如下的列表:
UID PID PPID C STIME TTY TIME CMD
以及稍后在列表中的相关信息,例如,
tom 3647 20185 0 06:17 pts/2 00:00:00 sh -c xterm -e vile
tom 3648 3647 0 06:17 pts/2 00:00:00 xterm -e vile
tom 3649 3648 0 06:17 pts/3 00:00:00 vile
tom 3650 3649 0 06:17 pts/3 00:00:00 sh -c ps -ef
tom 3651 3650 0 06:17 pts/3 00:00:00 ps -ef
xterm的process-id(PID
)是开始的地方。它将在PPID
(父级的进程ID)列中找到至少一个其他位置。反过来,该进程的PID
可以用于进一步的子进程。
BSD系统使用一组不同的选项(例如,请参阅FreeBSD),但一般情况下,您可以从ps
获取必要的信息。