Я использую kubuntu 14.04. Я установил крон с помощью sudo склонный - получают крон установки, и затем я создал этот файл в НЕАКТИВНОМ, названном openurl.py
.
#!/usr/bin/env python
import webbrowser
webbrowser.open('http://eample.com')
Я затем ввел chmod +x openurl.py
в терминал для создания .py файла excecutionable. Если я ввожу./openurl.py
к терминалу, работам сценария.
затем, с помощью средства запуска приложения начала я нажал параметры настройки системы> планировщик задач> новая задача> затем, я искал openurl.py файл и выбрал, когда я хотел, чтобы это работало.
Если я ввожу crontab -e
в терминал это отображено:
#openurl
21 21 * * * /home/craig/openurl.py
# File generated by KCron the Thursday 29 Jan 2015 21:20.
И затем я ожидаю, и ничего не происходит. Что я делаю неправильно?
Проблема была уже решена здесь.
Изменитесь cron
crontab для запуска предпочтительного Python
интерпретатор со сценарием соединяет каналом как аргумент:
21 21 * * * /usr/bin/python /home/craig/openurl.py
Помните, что стандартная символьная ссылка укажет на версию по умолчанию интерпретатора, который не может быть корректным, если Ваше программное обеспечение основано на 2. X синтаксисов Python
.
cron
демон может запустить интерпретатор с поднятыми правами, использовать ограниченный интерпретатор для автоматизированных критических по отношению к безопасности задач.
ОТРЕДАКТИРУЙТЕ для покрытия большей части проблем после установки cronjob:
Контролировать в режиме реального времени работы, делавшие cron
и другие системные демоны, выполнитесь в терминале:
tail -f /var/log/syslog
или
tailf /var/log/syslog
(в некоторых системах путь файла журнала отличается, как /var/log/cron.log
)
Для перенаправления ВЫВОДА задания крона вставьте перенаправление оболочки для STDOUT в cronjob файле, как:
21 21 * * * /usr/bin/python /home/craig/openurl.py >> /home/craig/test.log
В a Python
напишите сценарий команды как print('TEST')
добавит строковый ТЕСТ к test.log
; любой простой подпроцесс будет также перенаправлен.
Просто проверьте файл, чтобы знать, работает ли сценарий как ожидалось.
Не стесняйтесь комментировать под здесь, если Вы имеете больше вопросов и не забываете нажимать левую Стрелку вверх и метку как Фаворит, если я имею какую-либо справку.
Хорошего дня.
Я столкнулся с той же проблемой, что и вы. Ваша работа может завершиться ошибкой, поскольку для нее требуется сеанс X, так как вы пытаетесь открыть веб-браузер. Вы должны указать export DISPLAY=:0;
после расписания в вашем cronjob, как в
21 21 * * * export DISPLAY=:0; /usr/bin/python /home/craig/openurl.py >> /home/craig/test.log
python3 /home/fin/Labs/my-cheatcodes/src/dsktp_startup_script/dsktp_startup_script.py > capture_report.txt
Если это не работает, вы можете попробовать заменить :0
выводом выведите $DISPLAY
в графическом терминале.