我想用不同的路径作为参数多次运行一个脚本,并查看输出。在
如果我在命令提示符下运行带有参数path_to_code/code1.cpp
的脚本path/lizard
path/lizard path_to_code/code1.cpp
我得到输出-我想在多个文件上运行这个脚本。在
看着this和类似的问题,我试着
^{pr2}$没有输出。在
import glob, subprocess
def run_command(command):
p = subprocess.Popen(command, stdout=subprocess.PIPE, stderr=subprocess.STDOUT)
out, err = p.communicate()
print out
program = '"C:/Python27/Scripts/lizard.bat "'
path = '"path_to_code/*.cpp"'
for path1 in glob.glob(path):
command = program + path1
run_command(command)
没有输出。在
(当然,我希望递归地遍历目录,但这是下一步)。在
如何从脚本中获取运行程序的输出?我认为逻辑上两个版本都应该给我输出。。。我做错什么了?在
据我所见,你忘了打电话沟通。试试看
见https://docs.python.org/2/library/subprocess.html?highlight=popen.communicate#subprocess.Popen.communicate
干杯
根据对我问题的评论,我试着
成功了-然后我意识到引用是问题所在,伊坦·赖斯纳是对的。消除他们使它成功。在
完整的更正代码:
^{pr2}$尝试使用
subprocess.check_output
它应该做你想做的。在
所以在你的具体例子中
^{pr2}$相关问题 更多 >
编程相关推荐