文章目录 1. 介绍 2. 方法 2.1 commands.getstatusoutput(cmd) 2.2 commands.getstatus(file) 2.3 commands.getoutput(cmd) 3 练习 1. 介绍 commands模块是pyth
文章目录
- 1. 介绍
- 2. 方法
- 2.1 commands.getstatusoutput(cmd)
- 2.2 commands.getstatus(file)
- 2.3 commands.getoutput(cmd)
- 3 练习
1. 介绍
commands模块是python的内置模块,他共有三个函数,使用help(commands)可以查看到
2. 方法
FUNCTIONSgetoutput(cmd)
Return output (stdout or stderr) of executing cmd in a shell.
getstatus(file)
Return output of "ls -ld " in a string.
getstatusoutput(cmd)
Return (status, output) of executing cmd in a shell.
2.1 commands.getstatusoutput(cmd)
返回一个元组(status,output)
status代表的shell命令的返回状态,如果成功的话是0;output是shell的返回的结果
用os.popen()执行命令cmd, 然后返回两个元素的元组(status, result),其中 status为int类型,result为string类型。cmd执行的方式是{ cmd ; } 2>&1, 这样返回结果里面就会包含标准输出和标准错误.
>>> status, output = commands.getstatusoutput("ls")
>>> print status
0
>>> print output
atom:
bookstore
cookie.py~
2.2 commands.getstatus(file)
只返回执行的结果, 忽略返回值.返回ls -ld file执行的结果.
commands.getstatus(file)注意:该函数已被python丢弃,不建议使用
2.3 commands.getoutput(cmd)
只返回执行的结果, 忽略返回值.
>>> print commands.getoutput("ls")atom:
bookstore
cookie.py~
3 练习
#!/usr/bin/python#coding:utf-8
import os,sys,commands
def openfile():
grains = {}
_open_file=65533
try:
getulimit=commands.getstatusoutput('source /etc/profile;ulimit -n')
except Exception,e:
pass
if getulimit[0]==0:
_open_file=int(getulimit[1])
grains['max_open_file'] = _open_file
print grains
return grains
openfile()
输出:
$ python com1.py{'max_open_file': 1024}
【文章出处:香港多ip站群服务器 http://www.558idc.com/hkzq.html提供,感恩】