我正在尝试使用子进程Popen
在python中运行带有某些参数的exe,但是代码当前没有输出任何内容,并且在我运行文件时CMD窗口没有打开。
我知道该命令在我手动将其粘贴到CMD中时会起作用,并且运行得很好,我的代码可能在做错什么呢?
import sys
import admin
import subprocess
from subprocess import Popen, PIPE
Path_2to3 = sys.executable[:-11] + "Scripts"
cmdCommand = '''cd "{}" && 2to3.exe -w "C:/Users/Desktop/bulk_converter/tests/test2.py"'''.format(Path_2to3)
process = subprocess.Popen(cmdCommand, stdout=subprocess.PIPE, shell=True)
output, error = process.communicate()
print(output, error)
从print(output,error)
b'' None
任何帮助/建议将不胜感激。
答案 0 :(得分:0)
您也许还指定stderr
应该重定向到管道:
stderr=subprocess.PIPE
您可能还想将timeout
参数传递给communicate
。