首页 > 代码库 > python第三方库系列之十--commands库

python第三方库系列之十--commands库

    我们这次讲的是利用commands模块执行Linux shell命令,当我们用Python写运维脚本时,经常需要执行linux shell的命令,Python中的commands模块专门用于调用Linux shell命令,并返回状态和结果,下面是commands模块的3个主要函数:
1.commands.getoutput(‘shell command‘)
2.commands.getstatus(‘file‘)
3.commands.getstatusoutput(‘shell command‘)
分别讲解:
一、commands.getoutput(‘shell command‘)
执行shell命令,返回结果(string类型)

import commands
commands.getoutput('pwd')
#/Users/admin/PycharmProjects/test

二、commands.getstatus(‘file‘)

该函数已被python丢弃,不建议使用,它返回 ls -ld file 的结果(String)(返回结果太奇怪了,难怪被丢弃)
import commands
commands.getstatus('admin.tar')
#'-rw-rw-r-- 1 oracle oracle 829440 Jan 29 10:36 admin.tar'
三、commands.getstatusoutput(‘shell command‘)
执行shell命令, 返回两个元素的元组tuple(status, result),status为int类型,result为string类型。
cmd的执行方式是{ cmd ; } 2>&1, 故返回结果包含标准输出和标准错误。这是用的最多的一个函数。
import commands
commands.getstatusoutput('pwd')
#(0, '/Users/admin/PycharmProjects/test')


python第三方库系列之十--commands库