在Bash中,我们可以运行这样的程序
./mybin && echo "OK"
而这
./mybin || echo "fail"
但是我们如何将成功或失败的命令与现有的过程联系起来呢?
编辑解释:
现在我们运行./mybin
mybin退出有或没有错误,它将什么也不做,但在mybin运行期间,
我怎样才能达到像启动./mybin && echo ok || echo fail这样的过程一样的效果?
无论是shell脚本还是python编程方式都非常棒,谢谢!

最佳答案

但是我们如何将成功或失败的命令放在已经存在的进程中呢?
假设您引用的是在后台运行的命令,那么可以使用wait等待该命令完成并检索其返回状态。例如:

./command &  # run in background
wait $! && echo "completed successfully"

这里我使用$!来获取后台进程的PID,但它可以是shell的任何子进程的PID。

10-04 14:38