linux系统python执行命令
时间: 2024-10-18 16:03:02 浏览: 27
在Linux系统中,使用Python执行命令通常涉及外部进程的管理,可以利用内置的`subprocess`模块来完成。这个模块提供了多种方法来运行外部程序、获取输出、传递参数等。以下是几个常用的方法:
1. **`subprocess.Popen()`**: 这是最基本的方法,用于启动一个新的进程,并返回一个进程对象。
```python
import subprocess
# 执行命令
output = subprocess.run(["ls", "-l"], capture_output=True, text=True)
print(output.stdout) # 输出结果
```
2. **`subprocess.call()`**: 跟`Popen()`类似,但它会等待命令执行完毕后再继续,返回值是命令的退出码。
```python
import subprocess
ret_code = subprocess.call(["ls", "-l"])
if ret_code == 0:
print("命令成功")
else:
print(f"命令失败,退出码: {ret_code}")
```
3. **`subprocess.check_call()`**: 和`call()`相似,但如果命令执行失败,会抛出异常。
4. **`subprocess.check_output()`**: 获取命令输出,如果命令执行失败,同样会抛出异常。`capture_output=True`可以捕获输出。
5. **`subprocess.run().communicate()`**: 同时获取输出和错误信息,适用于更复杂的交互需求。
记得要在执行敏感操作时处理好输入和输出,防止安全风险。
阅读全文