Python 的 subprocess 模块用于创建新进程、执行外部命令或程序,并能与这些进程的输入/输出/错误流交互,获取其执行结果(如返回码、输出内容)。它是 Python 中替代旧有模块(如 os.system、os.popen)的推荐方案,提供了更灵活、安全的进程管理能力。
一、核心功能与基本概念
subprocess 模块的核心是启动外部进程(如系统命令 ls/dir、可执行文件 exe、其他脚本 bash/python 等),并通过以下方式与进程交互:
- 向进程发送输入(
stdin)。 - 捕获进程的输出(
stdout)和错误信息(stderr)。 - 获取进程的退出码(...