Поиск строки в самом последнем файле в каталоге

Задание cron, указанное как

0 */5 * * * script.sh

будет выполняться в качестве второго варианта с четырехчасовым интервалом между заданием в 20 :00 и 00 :00.

Вы можете попробовать использовать пять рабочих спецификаций:

0 0-20/5 1-31/5 * * script.sh
0 1-21/5 2-31/5 * * script.sh
0 2-22/5 3-31/5 * * script.sh
0 3-23/5 4-31/5 * * script.sh
0 4-19/5 5-31/5 * * script.sh

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

Это может быть нормально. Если это не так, вы можете рассмотреть возможность запуска задания в качестве фонового задания в бесконечном цикле со встроенной 5-часовой задержкой -.

#!/bin/sh

while true; do
    script.sh &
    sleep 18000   # 5h
done

Вышеупомянутый сценарий представляет собой управляющий сценарий, который будет работать в фоновом режиме.

Очевидно, что после большого количества итераций он начнет слегка дрейфовать, и у вас могут возникнуть трудности с запуском точно в час.

Другая идея состоит в том, чтобы позволить сценарию самому перепланировать себя, используяat:

#!/bin/sh

echo script.sh | at now + 5 hours

# rest of script goes here.
0
14.07.2021, 13:00
0 ответов

Теги

Похожие вопросы