您可以使用stdout=subprocess.PIPE参数将子进程的输出管道连接到subprocess.PIPE对象,然后使用communicate()方法获取输出并逐行解析。

以下是修改后的代码示例:

import subprocess

process = subprocess.Popen(['iperf3', '-c', '38.47.96.96', '-p', '11111', '-i', '1'], stdout=subprocess.PIPE, universal_newlines=True)

for line in iter(process.stdout.readline, ''):
    # 处理每一行输出
    print(line.strip())

process.stdout.close()
process.wait()

在上面的示例中,我们使用iter(process.stdout.readline, '')来迭代子进程的输出,直到遇到空行为止。然后,您可以根据需要处理每一行输出的逻辑。


原文地址: http://www.cveoy.top/t/topic/iSLb 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录