温馨提示×

python外部命令如何捕获命令输出结果

小樊
82
2024-12-12 00:53:37
栏目: 编程语言

在Python中,你可以使用subprocess模块来执行外部命令并捕获其输出结果

import subprocess

# 执行外部命令
command = "echo 'Hello, World!'"
process = subprocess.Popen(command, stdout=subprocess.PIPE, stderr=subprocess.PIPE, shell=True)

# 获取命令输出结果
stdout, stderr = process.communicate()

# 将输出结果转换为字符串
stdout_str = stdout.decode('utf-8')
stderr_str = stderr.decode('utf-8')

print("标准输出结果:")
print(stdout_str)

print("错误输出结果:")
print(stderr_str)

# 等待命令执行完成
return_code = process.wait()
print("命令返回码:", return_code)

在这个示例中,我们使用subprocess.Popen执行了一个简单的echo命令。stdoutstderr参数分别用于捕获标准输出和错误输出。communicate()方法用于等待命令执行完成并获取输出结果。最后,我们使用decode()方法将输出结果从字节串转换为字符串。

0