Crontab не запущенный скрипт Python

У меня есть следующая проблема: мой 'привет мировой' скрипт Python не может быть запущен crontab.

Если я установил crontab инструкцию как это:

* * * * * cd /home/ && /usr/bin/python /home/hello.py

Текст не появляется в терминале.

Но если я делаю:

* * * * * cd /home/ && /usr/bin/python /home/hello.py >> /home/log.txt

Ubuntu добавляет 'привет мировой' текст к log.txt

вот мой сценарий:

#!/usr/bin/env python
print('Hello World!')

Что я делаю неправильно?

P.S. уже считайте эту тему, Почему crontab сценарии не работают?

1
задан 3 April 2018 в 22:05

2 ответа

Ваш сценарий выполняется Кроном, и все работает, как он ожидается. Просто Крон не разработан для вывода чего-либо в терминал. Так, IMO, корректный вопрос здесь должен быть чем-то как: Куда стандартный вывод идет в Кроне?

Если это не перенаправляется (>, >>) или переданный по каналу (|) к другой программе все, что обычно будет производиться к STDOUT (если Вы, выполняют команду в командной строке), включая все сообщения об ошибках, будет отправлено в локальный почтовый ящик пользователя, который выполняет Cronjob. Для отправления/получения этих электронных писем, необходимо применить минимальную конфигурацию, как она описана здесь: Как я устанавливаю Крон для отправки электронных писем?

Большинство предложений в предложенном дублировании объясняет, как перенаправить вывод Cronjob к TTY или окну терминала, но получить вывод там необходимо быть входом в систему (в этом TTY или окно терминала) заранее. Вот немного дополнительных примеров:


Кроме того, в этом случае:

  • cd /home/ не нужно, потому что Ваш сценарий ничего не пишет там, и сценарий называет его полный путь.
  • /usr/bin/python не neede, потому что Вы говорите систему, которая является сценарием Python хижиной #!/usr/bin/env python. Но в этом случае файл должен иметь исполняемые полномочия: chmod +x /home/hello.py.
2
ответ дан 7 December 2019 в 13:25

Можно попробовать это!

* * * * * cd /home/ && /usr/bin/python /home/hello.py >> /dev/tty3

(или Ваш tty, если не tty3)

0
ответ дан 7 December 2019 в 13:25

Другие вопросы по тегам:

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