Назад | Перейти на главную страницу

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

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

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

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

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

Вы можете поместить это в /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