import subprocess
# 假设我们要调用的命令行程序路径
program_path = '/usr/local/bin/your_program'
# 构建命令行调用
command = [program_path, 'arg1', 'arg2', 'arg3']
# 调用程序并捕获输出和错误
try:
# 使用subprocess.run来执行命令
# stdout=subprocess.PIPE用于捕获标准输出
# stderr=subprocess.PIPE用于捕获标准错误
# text=True确保输出是字符串格式
# check=True如果命令执行失败则抛出异常
result = subprocess.run(command, check=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE, text=True)
# 打印程序的输出
print("程序输出:")
print(result.stdout)
except subprocess.CalledProcessError as e:
# 如果程序执行失败,打印错误信息
print("程序执行出错:")
print(e.stderr)
# 如果程序成功执行,可以继续后续处理
# 如果程序执行失败,可以根据错误信息进行错误处理
这段代码提供了一个如何使用Python的subprocess模块来调用外部命令行程序的示例。在这个例子中,我们假设有一个名为your_program的程序,它接受一些参数(arg1, arg2, arg3)。通过subprocess.run,我们可以执行这个程序,并获取它的输出和错误信息。如果程序执行成功,它会打印输出信息;如果执行失败,它会捕获错误信息并打印出来。
