gpt4 book ai didi

python - 退出python子进程中的无限进程

转载 作者:太空宇宙 更新时间:2023-11-04 09:58:11 25 4
gpt4 key购买 nike

我有以下代码

c = open("text.txt", 'a')    

output = subprocess.Popen('ping -t 127.0.0.1', stdout=subprocess.PIPE).communicate()[0]

c.write(str(output))

但由于 ping 是无限的,代码停留在第二行,直到我关闭 cmd

如何关闭无限子进程

i use python 2

最佳答案

您可以使用 -n 参数(在 linux 中)为 ping 设置有限数量的 ping 信号:

process = subprocess.Popen('ping -n 1 127.0.0.1', shell=True, stdout=subprocess.PIPE)
output = process.communicate()[0]
with open("text.txt", 'a') as f:
f.write(str(output))

或者只读第一行:

process = subprocess.Popen('ping 127.0.0.1', shell=True, stdout=subprocess.PIPE, universal_newlines=True)

output = process.stdout.readline()
process.stdout.close()
process.kill()

with open("text.txt", 'a') as f:
f.write(str(output))

关于python - 退出python子进程中的无限进程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44986097/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com