Задание крона запускает сценарий Python, но никакой вывод не получен

У меня есть программа Python, которая копирует содержание USB-устройств, подключенных к моему ПК, в этом случае это - планшет на базе Android. Сценарий usese pyudev обнаружить устройства и затем использовать GVfs смонтировать их.

Я хотел запустить сценарий и выполнить его в backgroud, таким образом, я не должен запускать его каждый раз. Я пытался запустить его в /etc/init/ но выполнение GVfs как проблемы первопричин, таким образом, я решил запустить скрипт через cron. У меня есть он набор для запуска в определенное время, если я делаю a ps -aux и я вижу перечисленный процесс, однако если я включаю свое устройство, ничего не происходит, файлы не копируются.

Если я запускаю сценарий вручную, он работает без любых проблем.

Это - то, что я имею в своем crontab.

45 10 * * * cyberbemon /home/cyberbemon/Development/python/usb-dumper-1.0/build/lib.linux-x86_64-2.7/usb-dumper/./usb-dumper.py `

Python использует этот ENV #!/usr/bin/env python

Я пытался зарегистрировать вывод программ в файл, как так cyberbemon /home/cyberbemon/Development/python/usb-dumper-1.0/build/lib.linux-x86_64-2.7/usb-dumper/./usb-dumper.py > /home/cyberbemon/usb-dumped/log.txt 2>&1

Но тот файл пуст.

Я получил источник программы отсюда: https://codingteam.net/project/usb-dumper/download

0
задан 22 January 2016 в 13:16

1 ответ

  • Если Вы отредактировали crontab своего пользователя, то подавляете/стираете имя пользователя cyberbemon это предшествует продвижению длинного тракта к Вашему сценарию. Вам не нужно имя пользователя там.

  • Если я не ошибаюсь, Вы указываете среду пользователя с #! вначале, нет просто !. Это может просто быть опечатка в сообщении, или Вы забыли выходить из знака фунта в блоке кода при записи сообщения (как так \#! ). Таким образом, это должно читать:

    #!/usr/bin/env Python

  • Это могу просто быть я, но я не знаком с путями, которые содержат /./ где-нибудь в середине, как в:

/home/cyberbemon/Development/python/usb-dumper-1.0/build/lib.linux-x86_64-2.7/usb-dumper/./usb-dumper.py

... без добавленных пробелов. Обычно в большинстве оболочек типа . :

  • синоним для cmd source при одном только использовании перед именем файла.

  • обозначает скрытый файл, при добавлении префикса имени файла.

  • используется в regex для соответствия одному отдельному символу

  • указывает на существующий рабочий каталог при использовании в путях, что касается примера в

    $HOME/Desktop CD $; pwd

    /home/cyberbemon/Desktop

    $HOME/.bashrc CP $.

Я рекомендовал бы перейти к каталогу, где сценарий Python хранится, и в терминале выполняет команду pwd. Вы получите полный путь к своему сценарию.

0
ответ дан 29 September 2019 в 13:50

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

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