python, cron и взаимодействие с Growl
У меня есть следующий файл python с именем temp.py
import subprocess
p = subprocess.Popen('growlnotify -m \"Program is not running\"', shell=True, stdout=subprocess.PIPE, stderr=subprocess.STDOUT)
retval = p.wait()
print "end"
он отлично работает из командной строки с "python temp.py" и "sudo python temp.py" (все, что нужно сделать, это отобразить уведомление о рычании)
Я открываю crontab с помощью 'crontab -e' (я нахожусь на OSX, если это помогает. Я добавляю строку
- 8-23 * * * python /Users/xxx/Dropbox/scripts/temp.py >> /Users/xx/running.txt
Я ожидаю, что программа будет выполняться каждую минуту с 8 утра до 23 вечера - и это происходит, файл 'running.txt' заполняется - но я не получаю уведомления рычание - какие-либо идеи?
1 ответ
Решение
Путь по умолчанию в crontab /usr/bin:/bin
, Если вы установили Growlnotify где-то еще, как /usr/local/bin/
Вы должны указать полный путь в скрипте.