Запустите исходную команду, используя python, и оставьте среду неизменной для следующего набора команд - PullRequest
0 голосов
/ 08 апреля 2020

Я пытаюсь использовать subproces.Popen () для запуска некоторой команды, как показано ниже:

cmd = source /dev/stdin <<< "$(docker run --rm XX/YY-application:${APP_TAG} test)"

 proc = subprocess.Popen(
        cmd, stdout=subprocess.PIPE, stderr=subprocess.PIPE, shell=True, executable="/bin/bash"
    )

Теперь она ничего не возвращает, и даже использование proc.stdout.readline() возвращает мне символ новой строки. При запуске того же cmd на оболочке выдает правильный вывод.

Итак, у меня есть две проблемы: 1. почему печать stdout ничего не дает? 2. как сохранить среду, созданную cmd, для использования в последующей команде?

...