@cobb

Как задать выполнение скрипта bash по собственному расписанию?

Добрый день. Подскажите, пожалуйста, кто сталкивался с такой задачей ? Необходимо задать расписание выполнения скрипта , но только по рабочим дням, если субботу и воскресенье я могу отсечь CRON-ом, то как быть с праздничными днями ? Например майские, новогодние праздники ? Можно ли в CRON заранее задать дни, в которые скрипт не запускается ? Или нужно это реализовывать в логике скрипта ?
  • Вопрос задан
  • 93 просмотра
Решения вопроса 1
fox_12
@fox_12
Расставляю биты, управляю заряженными частицами
В файле holidays.txt выписать праздничные даты согласно производственного календаря в формате %d.%m.%y

При запуске проверять текущую дату
#!/bin/bash

if  cat holidays.txt | grep `date +"%d.%m.%y"` > /dev/null ; then
   # выполнять если праздник
else
   # выполнять если не праздник
fi
Ответ написан
Пригласить эксперта
Ответы на вопрос 3
firedragon
@firedragon
Senior .NET developer
Только с помощью логики. То есть я бы сделал так: скрипт в кроне, но он читает при запуске текстовой файл с датами праздников. Этот самый файл вы заполняете либо руками, либо используя апи той же 1с
Ответ написан
@MechanID
Админ хостинг провайдера
Насколько я знаю крон не поддерживает исключения и тому подобное.
В свое время я делал просто текстовый файл в который можно было легко добавить даты прадзников, и скрипт по крону запускался все рабочие дни и первым делом проверял есть ли текущий день в этом файле, если да - то завершал свою работу. Также при таком варианте вам нужна напоминалка в календарь - раз в год заполнять этот файл.
Ответ написан
CityCat4
@CityCat4
Если я чешу в затылке - не беда!
В кроне насколько я знаю - нельзя. Придется проверять непосредственно в скрипте
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы