Запуск Bash скрипта в определенное время
Есть bash скрипт для мониторинга сервиса, который нужно запускать 2 раза в день с 12.00 до 13.00 и с 19.00 до 21.00. Как установить дату запуска? Crontab не подходит. Спасибо
Ответы (2 шт):
Автор решения: Andrey Belkin
→ Ссылка
- Прямые альтернативы к cron: anacron, fcron, Hcron, Jobber.
- Совсем другие технологии: systemd timers, jenkins, Amazon Web Services (AWS) Lambda, свои скрипты, например:
jobber.py на Питоне:
from subprocess import call
import time
while True:
call(["php","cron.php"])
time.sleep(120)
Автор решения: Verter
→ Ссылка
Как вариант запишите вашу конструкцию с while в скрипт. И запускайте его ежечасно через crontab. Можно ежеминутно, но тут есть проблема в том, что скрипт выполнится 60 раз с 12 до 13 часов. Поэтому нужно создавать флаг-файл, который будет создан после первого выполнения задачи. А при последующих срабатываниях будет блокировать выполнение. Потом с 13 до 19 часов его нужно будет удалить.