簡體   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