2016-03-09 63 views
0

這是一個CentOS 6.x盒子,我有兩件事情需要在另一個之後運行 - 一個shell腳本和一個.sql腳本。需要編寫一個運行兩個腳本的腳本,但需要在第二次運行之前停止第一個腳本

我想寫一個shell腳本,調用第一個腳本,讓它運行,然後在一定的時間後終止它,然後調用.sql腳本(它們不能同時運行)。

我不確定如何做中間部分,即在一定的時間限制後終止第一個腳本,有什麼建議嗎?

回答

0
script.sh & 
sleep 4h && kill $! 
script.sql 

這將等待4小時,然後殺死第一個腳本並運行第二個腳本。它總是等待4個小時,即使腳本提前退出。

如果您想立即繼續,這有點棘手。

script.sh & 
pid=$! 
sleep 4h && kill "$pid" 2> /dev/null & 
wait "$pid" 
相關問題