Мешайте крону послать мне по электронной почте

Как я могу мешать крону послать мне по электронной почте результаты заданий, которые я планирую?

10
задан 18.07.2009, 05:07

3 ответа

Путем установки переменной среды "MAILTO" как""

Somethig как:

SHELL=/bin/bash
MAILTO=



01 * * * *  /your/path/to/script/here.sh
15
ответ дан 07.12.2019, 12:36

Если Вы хотите, чтобы единственное задание остановилось, посылают Вам по электронной почте, просто добавляют>/dev/null 2> &1 к нему

Например:

0 * * * * /home/script >/dev/null 2>&1
12
ответ дан 07.12.2019, 12:36
  • 1
    Если Вы уверены, что одно выполнение закончится перед следующими запусками может стоить перенаправить вывод в именованный файл, а не в/dev/null: это действительно дает опцию проверки, что произошло с последним выполнением, если Вы подозреваете проблему. – mas 18.07.2009, 22:02

Крон только посылает Вам по электронной почте, если там производится, любой на stdout или stderr.

Если это - сценарий, Вы записали, сделайте это менее подробным - удаляют ненужный echo или print операторы. Перенаправление stdout кому: /dev/null также допустимое решение:

2 * * * * /my/script > /dev/null

Если Вы все еще получаете сообщения после выполнения этого, то вывод идет stderr, таким образом это должна быть ошибка, которую необходимо разрешить.. В противном случае можно перенаправить stderr кому: /dev/null с..

2 * * * * /my/script > /dev/null 2> /dev/null

.. хотя игнорирование сообщений об ошибках обычно является плохой идеей! (Как Вы будете знать, когда задание крона будет повреждено?)

Вы могли перенаправить вывод определенной команды от stderr до использования stdout 2>&1 - например:

command_which_prints_messages_to_stderr 2>&1 # redirect stderr to stdout

.. затем прямой stdout кому: /dev/null в Вашем задании крона - тот путь Вы заставляете громкую команду замолчать, не теряя сообщения об ошибках

4
ответ дан 07.12.2019, 12:36

Теги

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