我想在其他应用程序运行时运行一个应用程序。例如,在脚本中我启动一个应用程序:
#!/bin/sh
bob
并且该应用程序将运行很长时间。然而,我想在启动 5 秒后运行另一个应用程序alice
(将使用 的bob
结果)bob
。我应该怎么做?
答案1
根据和alice
的bob
编写方式以及每个的运行速度,这可能很简单:
#!/bin/sh
bob &
sleep 5
alice
但这有以下假设:
bob
不独占锁定其输出文件bob
然后跑得更快alice
alice
不需要完整的结果集bob
即可开始执行。
如果上述任何假设不满足,则解决方案是:
- 发明一台时间机器
- 回到足够长的时间
- 开始
bob
- 回到当前时间 + 5 秒
- 开始
alice
答案2
此应用程序将运行很长时间。但是,我想在启动 bob 5 秒后运行另一个应用程序 alice(将使用 bob 的结果)。
这似乎是任意的。如果你运行bob | alice
,那么alice
将立即开始处理 的输出bob
。 alice
将以最快的速度处理它bob
。
你的真正的问题? 你到底想实现什么目标?如果没有更多细节,这个问题就无法回答。