@cobb

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

Добрый день. Подскажите, пожалуйста, кто сталкивался с такой задачей ? Необходимо задать расписание выполнения скрипта , но только по рабочим дням, если субботу и воскресенье я могу отсечь CRON-ом, то как быть с праздничными днями ? Например майские, новогодние праздники ? Можно ли в CRON заранее задать дни, в которые скрипт не запускается ? Или нужно это реализовывать в логике скрипта ?
  • Вопрос задан
  • 182 просмотра
Решения вопроса 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
Не джун-мидл-сеньор, а трус-балбес-бывалый.
Только с помощью логики. То есть я бы сделал так: скрипт в кроне, но он читает при запуске текстовой файл с датами праздников. Этот самый файл вы заполняете либо руками, либо используя апи той же 1с
Ответ написан
Комментировать
@MechanID
Админ хостинг провайдера
Насколько я знаю крон не поддерживает исключения и тому подобное.
В свое время я делал просто текстовый файл в который можно было легко добавить даты прадзников, и скрипт по крону запускался все рабочие дни и первым делом проверял есть ли текущий день в этом файле, если да - то завершал свою работу. Также при таком варианте вам нужна напоминалка в календарь - раз в год заполнять этот файл.
Ответ написан
Комментировать
CityCat4
@CityCat4
//COPY01 EXEC PGM=IEBGENER
В кроне насколько я знаю - нельзя. Придется проверять непосредственно в скрипте
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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