Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我打算从主脚本调用一个 shell 脚本并等待它完成,然后再进一步处理主脚本,
我试过做
xyz_Sh & while [[ $cnt -gt 0 ]] ; do cnt=`ps -ef| grep "xyz_Sh" |grep -v grep |wc -l` done
我也尝试使用等待
. xyz_Sh & wait_id=$! wait $wait_id
但在这种情况下,控件不会返回到主程序,脚本在执行 xyz_Sh 后停止,我在这里缺少什么?
谢谢
阿里
除非将某些内容放入后台,xyz_Sh否则默认的 shell 行为应该完全符合您的要求。
xyz_Sh
在 shell 脚本中,在前一个命令结束之前不会执行命令,因此:
xyz_Sh //do other stuff
应该完全按照您的意愿工作。
另一方面,xyz_Sh 如果确实将事情放在后台,那么您应该更改xyz_Sh以等待其所有进程完成后再退出。这可以通过wait命令来完成。
wait