Jon*_*ono 5 bash shell process subshell
我在这里看这个问题,但它似乎不适合我:如何在命令行上获取bash子进程的进程ID
所以我有一个命令,我在子shell中开始,如:
(sleep 10 &)
Run Code Online (Sandbox Code Playgroud)
然后,我如何获取该睡眠命令的进程ID,并等待它?
如果我在上面的链接中没有任何进程ID与我看到的匹配后执行ps.
谢谢.
父进程是唯一可以正确等待子进程完成的进程,因此您需要从子 shell 中进行等待。
(sleep & wait)
(sleep & pid=$!; wait $pid)
Run Code Online (Sandbox Code Playgroud)