[英]Is there a linux command to block until a process exits?
這就是問題所在。 此外,我所擁有的只是PID,而我運行命令的shell不一定是最初調用該進程的shell。 有任何想法嗎?
這不是一個非常簡潔的方法,但你可以不斷向指定的pid發出kill(2)
系統調用,將零作為信號。 通過將errno
為ESRCH
,第一次kill
不成功,您可以得出結論該進程已退出。
while ps -p $PID >/dev/null 2>&1; do sleep 1; done
要么
while ps -p $PID >/dev/null 2>&1; do :; done
您可以檢查dir / proc / PID是否存在。 它似乎比發送多個信號更干凈
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.