python3 执行 shell 命令及提供终止执行操作条件
时间: 2023-09-06 17:09:38 浏览: 166
在 Python 中,可以通过 `os.system()` 函数来执行 Shell 命令。该函数会在执行 Shell 命令后返回命令的退出状态码。
例如,执行 `ls` 命令可以使用以下代码:
```python
import os
os.system("ls")
```
如果需要在执行命令时提供终止操作条件,可以使用 Python 的 `subprocess` 模块。该模块提供了更多灵活性和控制权,允许您在执行命令时控制输入、输出和执行环境。
例如,以下代码演示如何使用 `subprocess` 模块来执行命令,并在按下 Ctrl+C 时终止执行:
```python
import subprocess
try:
proc = subprocess.Popen(
['ping', '-c', '10', 'google.com'],
stdout=subprocess.PIPE,
stderr=subprocess.PIPE
)
while True:
output = proc.stdout.readline()
if output == b'' and proc.poll() is not None:
break
if output:
print(output.strip())
except KeyboardInterrupt:
proc.terminate()
```
在本例中,我们使用 `subprocess.Popen()` 函数创建了一个子进程来执行 `ping` 命令。然后,我们通过 `while` 循环来读取子进程的输出,直到命令执行结束。在循环中,我们还检查是否按下了 Ctrl+C,如果是,则通过 `proc.terminate()` 函数终止子进程的执行。
阅读全文