fluttershy174
@fluttershy174
Сисадмин и Фотограф

Почему Python subprocess не работает на nix так же как на Win?

Добрый вечер!
Хотел уточнить как можно побороть ошибку при использовании subprocess в Python.

Код простейший

filename = "test.py"
    filedir = current_directory + filename
    subprocess.call(filedir, shell=True)


Получаю ошибку
spoiler

/home/pavel/PY/venv1/NN_CM_V1_DOCKER/test.py
: not found/PY/venv1/NN_CM_V1_DOCKER/test.py: 1: 
import-im6.q16: attempt to perform an operation not allowed by the security policy `PS' @ error/constitute.c/IsCoderAuthorized/421.
import-im6.q16: attempt to perform an operation not allowed by the security policy `PS' @ error/constitute.c/IsCoderAuthorized/421.
import-im6.q16: attempt to perform an operation not allowed by the security policy `PS' @ error/constitute.c/IsCoderAuthorized/421.
import-im6.q16: attempt to perform an operation not allowed by the security policy `PS' @ error/constitute.c/IsCoderAuthorized/421.
import-im6.q16: attempt to perform an operation not allowed by the security policy `PS' @ error/constitute.c/IsCoderAuthorized/421.



Пробовал chmod +x на исп.файле через консоль
Пробовал в основном скрипте os.chmod (filedir, 0o755)

Использую VS Code - система Lubuntu22 , Python 3.10.12 (venv) (пытаюсь портировать ПО для работы в докере)
  • Вопрос задан
  • 137 просмотров
Решения вопроса 1
@0x0f80
Ошибка из-за конфликта с ImageMagick на системах unix, команда import ассоциирована с ImageMagick, а не с python скриптом. Попробуйте явное указание интерпретатора python при вызове скрипта через subprocess:
subprocess.call(["python3", filedir], shell=False)
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
CityCat4
@CityCat4
//COPY01 EXEC PGM=IEBGENER
Потому что - внезапно - линух это не винда ;)
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы