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

来源:互联网 发布:网络综艺节目评价 编辑:程序博客网 时间:2024/05/21 15:00
    我们这次讲的是利用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 commandscommands.getoutput('pwd')#/Users/admin/PycharmProjects/test

二、commands.getstatus('file')

该函数已被python丢弃,不建议使用,它返回 ls -ld file 的结果(String)(返回结果太奇怪了,难怪被丢弃)
import commandscommands.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 commandscommands.getstatusoutput('pwd')#(0, '/Users/admin/PycharmProjects/test')


1 0