2016-03-09 3 views
0

Это поле CentOS 6.x, на нем у меня есть две вещи, которые мне нужно запустить один за другим - сценарий оболочки и сценарий .sql.Необходимо написать скрипт, который запускает два сценария, но должен остановить первый до 2-го запуска

Я хочу написать сценарий оболочки, который вызывает первый скрипт, позволяет ему запускать и затем завершать его через определенное количество часов, а затем вызывает сценарий .sql (они не могут запускаться одновременно).

Я не уверен, как выполнить среднюю часть, то есть завершение первого скрипта после определенного срока, любые предложения?

ответ

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

Это будет ждать 4 часа, а затем убьет первый скрипт и запустит второй. Он всегда ждет 4 часа, даже если сценарий выходит рано.

Если вы хотите переехать сразу, это немного сложнее.

script.sh & 
pid=$! 
sleep 4h && kill "$pid" 2> /dev/null & 
wait "$pid" 
Смежные вопросы