执行脚本:若Popen,不需要等待run_networked 的指令结束;而使用run需要等待run_networked完成
import subprocess
import time
def run_command(n = 10, time_interval = 1):
i = 0
ss = []
subprocess.Popen('./run_networked.sh') #no wait time
while i < n:
print('ss-ing ........')
ss.append(subprocess.run(['ss', '( dport = :8080 or sport = :8080 )' ], stdout=subprocess.PIPE).stdout.decode('utf-8'))
time.sleep(time_interval)
i += 1
return ss
run_command()
本文探讨了在Python中,如何使用Popen方法异步执行 './run_networked.sh' 脚本,与run方法的区别,后者会阻塞直到脚本完成。通过实例展示了如何在循环中连续调用并收集输出,提高效率。
511

被折叠的 条评论
为什么被折叠?



