@Azat2015

Как в python передать в командную строку ввод данных при запуске внешнего приложения?

Как заставить работать код
cmd = "my_data | app.exe -p1 -p2 -p3 "
run_cmd = subprocess.Popen(cmd)

Если запускаю команду "my_data | app.exe -p1 -p2 -p3" в командной строке, все работает.
Если запускаю из python с cmd = "app.exe -p1 -p2 -p3", т.е. без ввода данных, тоже все работает
При попытке запуска из python как в приведенном коде, появляется ошибка "FileNotFoundError: [WinError 2] Не удается найти указанный файл".
  • Вопрос задан
  • 614 просмотров
Решения вопроса 1
SoreMix
@SoreMix Куратор тега Python
yellow
subprocess.run('my_data | app.exe -p1 -p2 -p3', shell=True)
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@Flexonimus
Попробуй
subprocess.run(Твоя команда, shell=True) #не возвращает вывод командной строки
subprocess.getoutput(Твоя команда, shell=True) #возвращает вывод командной строки.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы