Установка переменной среды для launchctl

Я настроил это дополнение todo.txt и теперь хочу запустить todo.sh recur каждое утро. У меня Lingon (Mac GUI) запускает команду, но я получаю следующую ошибку:

5/15/12 10:33:00.067 AM ryan-recurring-tasks: Can't exec "todo.sh": No such file or
directory at /Users/ryan/Dropbox/todo/.todo.actions.d/recur line 70.

Мне посоветовали установить переменную среды явно, но я не уверен в синтаксисе. Я пробовал все это, но не игра в кости:

launchctl setenv TODO_SH $TODO_SH

launchctl setenv TODO_SH $/Users/ryan/Dropbox/todo/todo.sh

launchctl setenv TODO_SH /Users/ryan/Dropbox/todo/todo.sh

Вот мои настройки Lingon для команды, на случай, если там есть опция, которая может помочь. Я не знаю, что представляет собой поле "Изменения в этом пути"...

Спасибо за любую помощь!

2 ответа

Решение

Ожидается повторный сценарий todo.sh быть на вашем пути (вот что $TODO_SH со временем расширяется до). Есть несколько способов добавить ваш расширенный путь (включая каталог tobox Dropbox) к пути launchd, но лучшим решением может быть редактирование recur дополнение, чтобы сказать:

my @args = ($ENV{TODO_FULL_SH}, "command", "add", $add);

вместо.

Если это сработает, дайте мне знать, я обновлю выпущенный скрипт.

Похоже, что сценарий зависит от /Users/ryan/Dropbox/todo/.todo.actions.d/recur. Этот файл действительно существует?

Параметры "Изменения в этом пути" сообщают launchd выполнить скрипт или команду при изменении данной папки. Это не связано с вашей проблемой.

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