簡體   English   中英

在 subprocess.check_output() 中抑制 stderr

[英]Suppress stderr within subprocess.check_output()

我試圖找到一種方法來忽略 stderr 流(類似於2> /dev/null ):

output = subprocess.check_output("netstat -nptl".split())

我應該在上面的命令中添加什么來實現這一點?

只需告訴subprocess為您重定向它:

import os
import subprocess

with open(os.devnull, 'w') as devnull:
    output = subprocess.check_output(
        "netstat -nptl".split(), stderr=devnull
    )

請注意,Python 3 添加了一個subprocess.DEVNULL對象,這樣您就不必自己打開它了:


import subprocess
    
output = subprocess.check_output(
    "netstat -nptl".split(), stderr=subprocess.DEVNULL
)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM