执行 shell 命令时,通常需要捕获其输出,无论是错误消息还是成功消息。以下是实现此目的的一些方法:
run 函数:
import subprocess result = subprocess.run(['ls', '-l'], stdout=subprocess.PIPE) output = result.stdout.decode('utf-8')
Python 3.7 的单行代码:
subprocess.run(['ls', '-l'], capture_output=True, text=True).stdout
check_output函数:
import subprocess output = subprocess.check_output(['mysqladmin', 'create', 'test', '-uroot', '-pmysqladmin12']) output = output.decode('utf-8')
import subprocess p = subprocess.Popen(['ls', '-a'], stdout=subprocess.PIPE, stderr=subprocess.PIPE) output, error = p.communicate() output = output.decode('utf-8') if error: error = error.decode('utf-8')
以上是如何在 Python 中捕获 Shell 命令的输出?的详细内容。更多信息请关注PHP中文网其他相关文章!