2015-04-15 67 views
-1

我有腳本,我假設有時會掛起。bash中的腳本在進程上等待,然後放棄

我的目標是等到腳本完成或殺死它,如果它在30秒後沒有出現,並返回一些代碼。

(function) & pid=$! 
wait $pid || sleep 30 || kill -9 $pid 
finished=$? 

所以我想到了上面。我不想浪費額外的第二次睡覺,如果過程完成,爲什麼我使用等待。

這是正確的還是更好的方法?

+1

這已被多次回答 - 以下是如何在bash中執行超時:http://www.bashcookbook.com/bashinfo/source/bash-4.0/examples/scripts/timeout3 –

回答

相關問題