gpt4 book ai didi

Python同步运行?一次运行一个可执行文件

转载 作者:太空宇宙 更新时间:2023-11-04 03:39:45 32 4
gpt4 key购买 nike

尝试使用 python 控制大量已编译的可执行文件,但遇到了时间线问题!我需要能够同时运行两个可执行文件,并且还能够“等待”直到一个可执行文件完成后再启动另一个可执行文件。此外,其中一些需要 super 用户。这是我目前所拥有的:

import os
sudoPassword = "PASS"
executable1 = "EXEC1"
executable2 = "EXEC2"
executable3 = "EXEC3"
filename = "~/Desktop/folder/"
commandA = filename+executable1
commandB = filename+executable2
commandC = filename+executable3
os.system('echo %s | sudo %s; %s' % (sudoPassword, commandA, commandB))
os.system('echo %s | sudo %s' % (sudoPassword, commandC))
print ('DONESIES')

假设 os.system() 在移动到下一行之前等待可执行文件完成,这应该同时运行 EXEC1 和 EXEC2,并在它们完成后运行 EXEC3...但事实并非如此。实际上,它甚至在 commandB 完成之前就在 shell 中打印“DONESIES”……请帮忙!

最佳答案

您的脚本仍将按顺序执行所有 3 个命令。在 shell 脚本中,分号只是在一行中放置多个命令的一种方式。它没有做任何特别的事情,只是一个接一个地运行它们。

如果您想从 Python 程序并行运行外部程序,请使用 subprocess 模块:https://docs.python.org/2/library/subprocess.html

关于Python同步运行?一次运行一个可执行文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27067614/

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