subprocess.Popen使用说明
时间: 2023-07-26 19:09:21 浏览: 150
`subprocess.Popen` 是一个用于启动和管理子进程的 Python 模块。通过使用 `Popen`,我们可以在 Python 中创建新的进程并与其交互。下面是一些常见的用法:
1. 启动一个命令行程序并获取其输出
```python
import subprocess
# 启动命令行程序并获取输出
process = subprocess.Popen(["ls", "-l"], stdout=subprocess.PIPE)
output, error = process.communicate()
# 打印输出结果
print(output.decode("utf-8"))
```
2. 启动一个命令行程序并等待其完成
```python
import subprocess
# 启动命令行程序并等待其完成
process = subprocess.Popen(["ls", "-l"])
process.wait()
# 执行完毕后打印提示信息
print("Completed!")
```
3. 通过管道将一个进程的输出传递给另一个进程
```python
import subprocess
# 启动第一个进程并将其输出传递给第二个进程
process1 = subprocess.Popen(["ls", "-l"], stdout=subprocess.PIPE)
process2 = subprocess.Popen(["grep", "test"], stdin=process1.stdout, stdout=subprocess.PIPE)
# 获取第二个进程的输出
output, error = process2.communicate()
# 打印输出结果
print(output.decode("utf-8"))
```
以上是 `subprocess.Popen` 的一些常见用法,实际应用中还有更多的选项和场景。需要根据具体情况进行灵活使用。
阅读全文