在Python中,你可以使用subprocess
模块来运行外部命令并捕获其输出
import subprocess
# 运行外部命令并捕获stdout和stderr
completed_process = subprocess.run(["echo", "Hello, World!"], stdout=subprocess.PIPE, stderr=subprocess.PIPE, text=True)
# 打印捕获到的输出
print("stdout:", completed_process.stdout)
print("stderr:", completed_process.stderr)
# 获取返回码
return_code = completed_process.returncode
print("Return code:", return_code)
在这个例子中,我们使用subprocess.run()
函数来运行一个简单的echo
命令。我们将stdout
和stderr
参数设置为subprocess.PIPE
,以便捕获命令的输出。text=True
参数表示我们希望以文本形式接收输出,而不是字节形式。
subprocess.run()
函数返回一个CompletedProcess
对象,它包含以下属性:
stdout
:命令的标准输出stderr
:命令的标准错误returncode
:命令的返回码你可以使用这些属性来捕获和处理命令的输出。