ARTICLE DETAIL

建站实战干货

来自一线的建站与推广经验沉淀,每一条都经过真实交付验证。

python执行linux系统命令的三种方式

2026/8/11 14:53:04 拓冰建站 浏览量
python执行linux系统命令的三种方式

前言

这是我在这个网站整理的笔记,有错误的地方请指出,关注我,接下来还会持续更新。 作者:神的孩子都在歌唱

1. 使用os.system

无法获取命令执行后的返回信息

import osos.system('ls')

image-20240131221444134

2. 使用os.popen

能够获取命令执行后的返回信息

import osdata=os.popen('ls').readlines()
print(data)

image-20240131221624726

3. 使用模块 subprocess

通过subprocess模块可以更灵活地执行命令,并获取执行后的返回信息。

import subprocess# 使用Popen执行命令,并捕获标准输出
result = subprocess.Popen('ls', shell=True, stdout=subprocess.PIPE, stderr=subprocess.STDOUT)# 读取并解码标准输出
output_bytes = result.stdout.read()
output_str = output_bytes.decode('utf-8')# 输出结果
print(output_str)# 或者逐行输出结果
for line in output_str.splitlines():print(line)

image-20240131222135088

参数解释:

  • shell=True:指示在shell中运行命令。
  • stdout=subprocess.PIPE:捕获命令的标准输出。
  • stderr=subprocess.STDOUT:将标准错误输出重定向到标准输出。

通过使用subprocess模块,可以更方便地处理命令执行的输出,并在需要时对其进行进一步处理。

作者:神的孩子都在歌唱
本人博客:https://blog.csdn.net/weixin_46654114
转载说明:务必注明来源,附带本人博客连接。