繁体   English   中英

如何抑制subprocess.call中的输出,但保存输出?

[英]How do I suppress the output in subprocess.call, but save the output?

目前我的代码是

print ("Getting MediaInfo...")
mediainfo_command = ("mediainfo", input_file_full)
mediainfo = (subprocess.call(mediainfo_command))

所以我要做的是将subprocess.call的输出保存到变量mediainfo中。 但是我不想在终端中显示命令的实际输出。

这可能吗?

请改用subprocess.Popen.communicate。

print ("Getting MediaInfo...")
mediainfo_command = ["mediainfo", input_file_full]
proc = subprocess.Popen(mediainfo_command, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
mediainfo, mediaerr = proc.communicate()

您可能还需要查看subprocess.check_output

print ("Getting MediaInfo...")
mediainfo_command = ["mediainfo", input_file_full]
mediainfo = subprocess.check_output(mediainfo_command)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM