繁体   English   中英

来自子进程命令 Python 的实时 output 状态 [重复]

[英]Live output status from subprocess command Python [duplicate]

我正在编写一个脚本来使用 subprocess.check_output 获取 netstat 状态。

cmd = 'netstat -nlpt'

result = subprocess.check_output(cmd, shell=True, timeout=1800)
print(result.decode('utf-8'))

以上运行完美。 有什么办法可以得到直播output。 我听说poll() function 做了这项工作。 来自子进程命令的实时 output 中,他们正在使用popen但我正在使用check_output请有人帮助我解决这个问题。 谢谢!

这个答案:

check_outputpopen Popen非阻塞 function(意味着您可以继续执行程序而无需等待调用完成), check_output是阻塞的。

这意味着如果您使用的是 subprocess.check_output subprocess.check_output() ,则不能拥有实时 output。

尝试切换到Popen()

暂无
暂无

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

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