编写运行命令并记录退出代码的包装函数的最佳方法是使用Python的subprocess
模块。subprocess
模块允许你运行外部程序并与之通信,同时可以捕获其退出代码。以下是一个示例函数:
import subprocess
def run_command(command):
process = subprocess.Popen(command, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
stdout, stderr = process.communicate()
exit_code = process.returncode
return stdout, stderr, exit_code
这个函数接受一个命令列表作为参数,并返回三个值:标准输出、标准错误和退出代码。你可以使用这个函数来运行任何命令,并捕获其输出和退出代码。例如:
command = ['ls', '-l']
stdout, stderr, exit_code = run_command(command)
print(f'Exit code: {exit_code}')
print(f'Standard output: {stdout.decode()}')
print(f'Standard error: {stderr.decode()}')
这个示例将运行ls -l
命令,并打印其退出代码、标准输出和标准错误。请注意,stdout
和stderr
是字节字符串,需要使用decode()
方法将其转换为字符串。
领取专属 10元无门槛券
手把手带您无忧上云