Automator не может найти импорт пакета в скрипте Python при запуске из zsh - PullRequest
0 голосов
/ 05 ноября 2019

Я знаю, что раньше меня об этом спрашивали по-разному, но я не могу найти ничего, что работает.

У меня есть задача автоматизации, которая запускает скрипт python (v3.7 через homebrew), который импортируетпакет предположения (v3) из скрипта оболочки автоматизатора (/ bin / zsh) в ОС Catalina. У меня есть вывод сценария, настроенный на отображение журнала, созданного задачей automator. Мне удалось сократить сценарий python до этого, чтобы продемонстрировать проблемное поведение:

from guessit import guessit
print("hello world")
  • Как есть, вывод журнала Automator пуст (я предполагаю, что сценарий завершается ошибкой,но ошибка скрыта. Дополнительное эхо оболочки после выполнения скрипта все еще отображается в журнале)
  • Если я удаляю импорт, я получаю «hello world» в журнале автоматора.
  • ЕслиЯ запускаю скрипт python из терминала, включая импорт, я получаю «hello world» в терминале.
  • Если я запускаю задачу automator с импортом, как / bin / sh, и в ОС Mojave, я получаю "hello world "в журнале automator.

Это заставляет меня поверить, что есть проблема с PATH в моем скрипте automator, которая изменилась при обновлении до Catalina и / или zsh.

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

1 Ответ

0 голосов
/ 07 ноября 2019

Я включил свой PATH в начало моего сценария оболочки, и простой импорт работал, как и ожидалось. Во время тестирования я сравнил вывод echo $PATH с тем же $ PATH в automator. $ PATH в Automator был только / usr / local / bin, в то время как мой терминал $ PATH включал другие записи, например каталог установки homebrew. Я добавил вывод терминала в начало сценария оболочки моего автоматора:

PATH="/usr/local/Cellar/:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/share/dotnet:/opt/X11/bin:/Library/Frameworks/Mono.framework/Versions/Current/Commands:$PATH"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...