在Python中,您可以使用subprocess
模块来处理Linux错误输出
import subprocess
# 执行一个命令并捕获标准输出和标准错误输出
command = "ls /non_existent_directory"
process = subprocess.Popen(command, stdout=subprocess.PIPE, stderr=subprocess.PIPE, text=True)
stdout, stderr = process.communicate()
# 打印标准输出和标准错误输出
print("标准输出:", stdout)
print("标准错误输出:", stderr)
# 检查命令是否成功执行
if process.returncode != 0:
print("命令执行失败,返回码:", process.returncode)
else:
print("命令执行成功")
在这个示例中,我们执行了一个尝试访问不存在的目录的命令。这将导致错误,因此我们可以捕获和处理错误输出。
stdout=subprocess.PIPE
:捕获标准输出。stderr=subprocess.PIPE
:捕获标准错误输出。text=True
:以文本模式处理输出,而不是字节模式。process.communicate()
方法返回一个包含标准输出和标准错误输出的元组。然后我们可以打印和处理这些输出。
最后,我们检查process.returncode
以确定命令是否成功执行。如果返回码不为0,则表示命令执行失败。