TGViewer
BashTex | Linux BashTex | Linux @bash_tex · 2.51K subscribers
Post #325 1.37K
Планировщик задач с временными окнами: только ночью, только по будням, только в выходные

Иногда cron не подходит:

📍 нужно запустить задачу в определенное время суток,
📍 но не строго по расписанию, а если есть что обрабатывать,
📍 и не запускать ее днем, когда сервер под нагрузкой.

Тут пригодится встроенная проверка временных окон в скрипте, а cron пусть просто каждые 10 минут запускает "умный планировщик".

🛠 Пример: выполнение задачи только с 02:00 до 05:00 по будням


#!/bin/bash

#настройки временного окна
start_hour=2
end_hour=5

# день недели (1..5 = пн-пт)
dow=$(date +%u)

#часы сейчас
hour=$(date +%H)

#проверка: будний день и нужное время
if (( dow >= 1 && dow <= 5 )) && (( hour >= start_hour && hour < end_hour )); then
echo "[$(date)] Временное окно открыто. Выполняем задачу."

#здесь реальная задача:
/opt/backup/backup-db.sh

else
echo "[$(date)] Вне временного окна. Пропуск."
fi


▪️ Расширение: исключение праздников (по файлу)


holiday_file="/etc/holidays.txt"
today=$(date +%Y-%m-%d)

if grep -q "$today" "$holiday_file"; then
echo "Сегодня праздник. Задача не выполняется."
exit 0
fi


▪️ Альтернатива: запуск только по выходным с 3 до 6 утра


(( dow == 6 || dow == 7 )) && (( hour >= 3 && hour < 6 )) && run_task


▪️ Запуск через cron


*/10 * * * * /usr/local/bin/task_scheduler.sh >> /var/log/task.log 2>&1


BashTex 📱 #bash #utils
  • 🔥 10
More from @bash_tex
  1. Oct 9, 2026BashTex 📱 #мем
  2. Oct 8, 2026Bridge FDB - как Linux bridge узнаёт, где находится MAC Linux bridge не знает заранее, за…
  3. Oct 7, 2026/dev/tcp - сетевое соединение средствами Bash В Bash есть малоизвестная возможность работа…
  4. Oct 6, 2026Ephemeral ports - почему заканчиваются исходящие TCP-порты Когда приложение устанавливает…
  5. Oct 5, 2026name_to_handle_at() - как получить файловый объект без обычного пути В Linux обычно обраща…
  6. Oct 2, 2026madvise() - как процесс подсказывает ядру, как он собирается использовать память Когда про…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →