我怎样才能等到指定的“xterm”完成?

在我的c-shell文件中,我做了如下的事情:

xterm -e“source xxxx0”&

xterm -e“source xxxx1”&

等待

码….

在“等待”之后的代码将在两个xterm完成后执行。

但它也给出了问题。 如果我有一些ps打开,就像由geditn打开的txt文件一样,或者我打开eclipse,它会挂在那里,因为“等待”正在等待所有的工作完成。

那么我怎么才能让“等待”只等待那两个xterm的工作。

换句话说,我希望这两个“xterm”同时运行。 而他们都完成后,代码可以继续。 我该怎么做?

非常感谢你

告诉wait它应该等待的进程ID:

 xterm ... & pid1=$! xterm ... & pid2=$! wait $pid1 $pid2 

这是假设你使用一个shell wait支持多个参数(bash,zsh,…)。 如果你使用sh来实现可移植性,那么你必须做两个等待:

 wait $pid1 wait $pid2 

这将等待直到完成。 如果第二个在第一个之前完成,等待将立即返回。