Запуск скрипта каждую минуту между двумя запусками с помощью launchd

Я пытаюсь запустить скрипт каждую минуту (или 20 секунд) между 06:30 и 10:30 каждый будний день с помощью launchd. У меня есть скрипт, работающий каждую минуту / X секунд, но я не знаю, как ограничить это рабочими днями между двумя определенными временами.

вопрос запускать задание cron каждые 5 минут два раза дайте ответ для cron, но я хотел бы сделать то же самое с помощью launchd.

Как мне это сделать?

25
задан Community
14.01.2023 7:45 Количество просмотров материала 2498
Распечатать страницу

1 ответ

StartCalendarInterval также может быть массивом словарей, как это: for w in {1..5}; do for h in {6..11}; do echo "<dict><key>Weekday</key><integer>$w</integer><key>Hour</key><integer>$h</integer><key>Second</key><integer>0</integer></dict>"; done; done | pbcopy.

вы также можете запускать скрипт каждую минуту, но выходить из него в зависимости от времени или даты:

weekday=$(date +%u)
hour=$(date +%-H)
min=$(date +%-M)    
[ $weekday -ge 6 ] && exit
[ $hour -le 5 -o $hour -eq 6 -a $min -le 29 ] && exit
[ $hour -ge 11 -o $hour -eq 10 -a $min -ge 31 ] && exit
2
отвечен user495470 2023-01-15 15:33

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх