Как настроить задание cron каждый случайный будний день?

Поскольку вопрос достаточно очевиден, я хотел бы знать, как настроить задание cron для выполнения любого случайного дня недели без использования какого-либо внешнего скрипта.

РЕДАКТИРОВАТЬ: Если люди не поняли этот вопрос, у нас 5 рабочих дней, а именно понедельник, вторник, среда, четверг, пятница. У меня есть сервер, работающий 24/7. Я хочу установить cron, который будет запускаться в любой 1 рабочий день в неделю.

Примечание: я очень сомневаюсь, что это повторяющийся вопрос, поскольку этот вопрос не относится к ежедневно / еженедельно / ежемесячно cronjobs.

2
задан 12 December 2018 в 12:25
1 ответ

Хотите, чтобы что-нибудь подобное сработало для вас? Она выбирает случайный день из массива bash days (обратите внимание на префикс SHELL), а затем записывает cronjob (random_runner) под /etc/cron.d для запуска скрипта /home/foobar/myscript.

/etc/cron.d/random_generator можно поместить в /etc/cron.d/random_generator и каждый день генерировать нового "бегуна".

SHELL=/bin/bash
27 8 * * * root  days=(Mon Tue Wed Thu Fri Sat Sun); rd="$(( RANDOM \% 7 ))"; day="${days[$rd]}"; echo "45 15 * * $day root /home/foobar/myscript" > /etc/cron.d/random_runner
2
ответ дан 3 December 2019 в 11:24

Теги

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