Как настроить crontab на выполнение в определенное время

StackOverflow https://stackoverflow.com/questions/3136

  •  08-06-2019
  •  | 
  •  

Вопрос

Как я могу настроить свой crontab на выполнение X script в 11: 59 вечера каждый день, не отправляя мне сообщений по электронной почте и не создавая никаких журналов?

Прямо сейчас мой crontab выглядит примерно так

@daily /path/to/script.sh
Это было полезно?

Решение

Когда вы будете использовать crontab -e, попробуйте следующее:

59 23 * * * /usr/sbin/myscript > /dev/null

Это означает:В 59 минут и 23 часа каждого дня (*) каждого месяца в каждый будний день выполняйте myscript.

Видишь мужчина кронтаб для получения дополнительной информации и примеров.

Другие советы

Последующие действия по ответ свриста, в зависимости от вашей оболочки, 2> и 1 должны идти после > /dev/null или вы все равно увидите выходные данные из stderr.

Следующее приведет к отключению как stdout, так и stderr:

59 23 * * * /usr/sbin/myscript > /dev/null 2>&1

Следующее отключает стандартный вывод, но stderr все равно будет отображаться (через стандартный вывод):

59 23 * * * /usr/sbin/myscript 2>&1 > /dev/null

Глава руководства по расширенному написанию сценариев Bash, посвященная перенаправлению ввода-вывода это хорошая ссылка - найдите 2> &1, чтобы увидеть пару примеров.

Вместе с приведенным выше ответом вы получите электронное письмо с любым текстом, написанным на stderr.Некоторые люди перенаправляют и это, и следят за тем, чтобы скрипт записывал журнал вместо этого.

... 2>&1 ....
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top