要获取父进程标准输出,您可以使用以下方法:
subprocess
模块:subprocess
模块是Python的一个内置模块,可以用于创建新进程、连接到它们的输入/输出/错误管道,以及获取它们的返回代码。您可以使用subprocess.run()
函数来运行一个命令,并获取其标准输出。例如:import subprocess
result = subprocess.run(["ls", "-l"], stdout=subprocess.PIPE, text=True)
print(result.stdout)
这将运行ls -l
命令,并将其标准输出存储在result.stdout
中。
os.popen()
函数:os.popen()
函数是Python的os
模块中的一个函数,可以用于运行一个命令并返回一个文件对象,您可以从该文件对象中读取命令的标准输出。例如:import os
with os.popen("ls -l") as f:
output = f.read()
print(output)
这将运行ls -l
命令,并将其标准输出存储在output
变量中。
subprocess.Popen
类:subprocess.Popen
类是subprocess
模块中的另一个类,可以用于创建一个新进程,并通过管道与其进行通信。您可以使用subprocess.PIPE
来获取进程的标准输出。例如:import subprocess
process = subprocess.Popen(["ls", "-l"], stdout=subprocess.PIPE)
output, _ = process.communicate()
print(output.decode("utf-8"))
这将运行ls -l
命令,并将其标准输出存储在output
变量中。
这些方法都可以用于获取父进程的标准输出。您可以根据您的需求选择最适合您的方法。
领取专属 10元无门槛券
手把手带您无忧上云