Unix 接二连三地进行工作

Unix 接二连三地进行工作,unix,jobs,Unix,Jobs,在unix/linux中,我有一个job./a.out,它当前在后台通过ssh运行 nohup ./a.out & 我已经从原来的shell中注销了。我想要另一份工作。/b.out仅在。/a.out完成后才开始运行。怎么做?整体效果相当于 ./a.out && ./b.out 但是我不想杀人 编辑:使用nohup澄清./a.out正在后台运行。(感谢Marc B)一种方法是使用 top或ps,并具有每秒检查一次的启动程序 查看PID是否仍处于活动状态。否则,启动器将运

在unix/linux中,我有一个job./a.out,它当前在后台通过ssh运行

nohup ./a.out &
我已经从原来的shell中注销了。我想要另一份工作。/b.out仅在。/a.out完成后才开始运行。怎么做?整体效果相当于

./a.out && ./b.out
但是我不想杀人


编辑:使用nohup澄清./a.out正在后台运行。(感谢Marc B)

一种方法是使用
top
ps
,并具有每秒检查一次的启动程序 查看PID是否仍处于活动状态。否则,启动器将运行
b.out

只需在运行
a
作业的终端中键入
b.out
。只要不关闭该终端,该输入将在输入队列中等待作业完成和shell提示结束reappear@MarcB.是的,如果在前台运行./a.out,这将起作用。但是,在我的例子中,./a.out当前正在后台运行。对不起,没有说清楚。此外,./b.out可能是一个复杂的命令。是否有更安全的解决方案来防止键入错误?相同shell的背景?然后,你可以简单地
fg
it,然后做打字前的事情。如果它与终端/外壳完全断开连接,那么您需要设置一个监视器来监视它的PID,并在a.out的PID消失时触发b.out。抱歉,它是另一个外壳,./a.out由nohup运行。
nohup(a.out;b.out)
将在子外壳中启动a和b,一个接一个。有没有具体的启动程序来做这件事?据我所知,没有。它可以很容易地用bash编写,但我现在没有时间。向pid发送信号0将测试它是否存在。您可以使用答案。@jcragun,非常感谢!现在我应该删除我的问题(以避免重复),还是应该以某种方式将其与您提到的问题联系起来?这可能就足够了。我想你可以把这个作为答案。