xterm -e在脚本完成执行时不终止

时间:2015-04-22 13:48:43

标签: xterm

我正在运行两个级别的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窗口保持打开状态,而不是关闭。

知道为什么吗?

感谢。

1 个答案:

答案 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获取必要的信息。