gpt4 book ai didi

Python 弹出命令。等到命令完成

转载 作者:IT老高 更新时间:2023-10-28 21:43:32 25 4
gpt4 key购买 nike

我有一个脚本,我用 popen 一个 shell 命令启动。问题是脚本不会等到 popen 命令完成并立即继续执行。

om_points = os.popen(command, "w")
.....

如何告诉我的 Python 脚本等到 shell 命令完成?

最佳答案

根据您希望如何处理脚本,您有两种选择。如果您希望命令在执行时阻止而不做任何事情,您可以使用 subprocess.call

#start and block until done
subprocess.call([data["om_points"], ">", diz['d']+"/points.xml"])

如果你想在它执行的时候做一些事情或者把事情输入到 stdin 中,你可以在 popen 调用之后使用 communicate

#start and process things, then wait
p = subprocess.Popen([data["om_points"], ">", diz['d']+"/points.xml"])
print "Happens while running"
p.communicate() #now wait plus that you can send commands to process

如文档中所述,wait 可能会死锁,因此建议进行交流。

关于Python 弹出命令。等到命令完成,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2837214/

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