Сценарий повторяется через X минут - PullRequest
10 голосов
/ 24 октября 2011

У меня есть скрипт bash в Ubuntu, я хочу, чтобы он запускался каждые 10 минут, например, после того, как он закончил. Как я могу это сделать? Спасибо!

Ответы [ 4 ]

16 голосов
/ 24 октября 2011

Вы можете проверить watch.
Из справочных страниц watch в описании написано watch - execute a program periodically, showing output fullscreen, вы можете попробовать watch -n 600 my_script.sh, который будет выполнять myscript.sh каждые 600 секунд, то есть 10 минут. watch показывает вывод на весь экран, вы можете перенаправить его на /dev/null, если вы не заинтересованы в выводе на экран.
Надеюсь, это поможет!

5 голосов
/ 24 октября 2011

Вы можете использовать at для перепланирования скрипта из скрипта.В конце сценария поставьте:

at now + 10 minutes << END
"$0" "$@"
END
5 голосов
/ 24 октября 2011

Cronjobs - это то, что вам нужно.

Мой пост в блоге: - http://linux -junky.blogspot.com / 2010/10 / guide-to-add-cronjob-упрощенный.html

Или вы также можете использовать sleep 600 в вашем скрипте.

0 голосов
/ 22 ноября 2017

Или с помощью crontab -e, или с другой опцией, чтобы проверить дату. например, если вы хотите что-то делать каждые 10 минут, вы можете написать:

if [ $((`date +%M`%10)) -eq 0 ] && [ `date +%S` -lt 10 ]; then
   #your code
fi
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...