调度命令在* running *命令完成后立即执行?

时间:2015-07-15 18:40:08

标签: bash

有时候我会运行一个命令“foo'”,它会比我预期的要长。如果我重新运行它,我可能会做类似的事情:

foo && mail -s "foo is done" me@com.com

..所以当它完成后它会给我发电子邮件,我可以去做其他事情。但是如果我已经启动了foo并且我不想重新启动它呢?有没有办法追加&& amp; mail ...原来是命令的一部分,可以这么说吗?

感谢。

1 个答案:

答案 0 :(得分:2)

您可以使用Control-Z暂停foo,然后使用fg重新启动它。要在mail完成后运行foo,请暂停并重新启动fg && mail -s "foo is done" me@com.comfoo将继续mail并在foo完成时执行&&。 (请注意,由于您使用的是mailfoo只会在;成功时执行。要运行,无论成功或失败,请使用&&代替{ {1}}。