Не удается открыть терминал из сценария Python - PullRequest
0 голосов
/ 06 августа 2020

Проблема

подпроцесс.Popen не может открыть какой-либо файл в Терминале

Полный код

import subprocess
subprocess.Popen(
                args=["open", "-F", "-a", "Terminal", r"bin/run.sh"],
                cwd='../resources'
            )

Сообщение об ошибке

«run.sh ”Не может быть открыт, потому что Sandbox не позволяет открывать документы в Терминале.

образ

Пробные отладки

Запуск сценария с sudo python3 показывает то же сообщение об ошибке.

Открытие другой программы с python работает. Например, работает этот код:

import subprocess
subprocess.Popen(
                args=["open", "-F", "-a", "Microsoft Word", r"test.docx"],
                cwd='../resources'
            )

Попытка открыть другие файлы в Терминале также не работает.

Смена виртуальной среды не работает.

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

ОБНОВЛЕНИЕ:

Python не находится в карантине (нет атрибута com.apple.quarantine)

Код также не работает при открытии с помощью python 2.7.16, который был установлен с ma c

Платформа

macOS Catalina версии 10.15.4

Информация о версии

Python 3.8.3

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...