subprocess
是 Python 内置的库,用于创建和管理新的子进程。它提供了一种在 Python 程序中调用外部命令和程序的方法。
subprocess
模块的主要用法有以下几种:
subprocess.run()
函数可以运行外部命令或程序,并等待其执行完成。例如:import subprocess
result = subprocess.run(['ls', '-l'], capture_output=True, text=True)
print(result.stdout)
subprocess.check_output()
函数可以运行外部命令,并获取其输出。例如:import subprocess
output = subprocess.check_output(['ls', '-l'])
print(output.decode())
subprocess.Popen()
函数可以创建子进程,并通过管道进行输入和输出的控制。例如:import subprocess
p = subprocess.Popen(['grep', 'hello'], stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
output, error = p.communicate(input=b'hello world')
print(output.decode())
subprocess.Popen()
函数结合 subprocess.PIPE
可以在后台运行命令,并获取其输出。例如:import subprocess
p = subprocess.Popen(['ls', '-l'], stdout=subprocess.PIPE, stderr=subprocess.PIPE)
output, error = p.communicate()
print(output.decode())
这些只是 subprocess
模块的一些常见用法,还有其他一些函数和参数可以根据具体需求进行使用。对于更复杂的需求,可以查阅官方文档以获取更详细的信息:https://docs.python.org/3/library/subprocess.html