Python模块subprocess怎么使用
Python中的subprocess模块用于创建新的进程,执行外部命令或脚本,并与其进行通信。以下是subprocess模块的一些常用方法的使用示例:
- 运行命令并获取输出结果:
import subprocess
# 执行命令
result = subprocess.run(['ls', '-l'], capture_output=True, text=True)
# 输出结果
print(result.stdout)
- 运行命令并获取返回码:
import subprocess
# 执行命令
result = subprocess.run(['ls', '-l'])
# 输出返回码
print(result.returncode)
- 捕获命令的标准输出和标准错误:
import subprocess
# 执行命令
result = subprocess.run(['ls', '-l'], capture_output=True, text=True)
# 输出结果
print(result.stdout)
print(result.stderr)
- 通过管道连接多个命令:
import subprocess
# 执行命令
result = subprocess.run('ls -l | grep ".txt"', shell=True, capture_output=True, text=True)
# 输出结果
print(result.stdout)
- 在子进程中交互式运行命令:
import subprocess
# 创建子进程
process = subprocess.Popen(['python'], stdin=subprocess.PIPE, stdout=subprocess.PIPE)
# 向子进程发送输入
process.stdin.write(b'print("Hello, World!")\n')
process.stdin.flush()
# 从子进程读取输出
output = process.stdout.read().decode('utf-8')
# 输出结果
print(output)
# 关闭子进程
process.stdin.close()
process.wait()
这些是subprocess模块的一些基本用法示例,你可以根据具体的需求进行进一步的调整和使用。
相关问答