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/Вы должны указать полный путь в скрипте.

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