您的位置:首页 > 运维架构 > Shell

python调用shell总结 分类: ubuntu python基础学习 2014-02-26 14:32 261人阅读 评论(0) 收藏

2014-02-26 14:32 746 查看
1.os.system

system方法只返回外部程序的运行结果。这个方法比较适用于外部程序没有输出结果的情况

2.os.popen

返回一个类文件对象,调用该对象的read()或readlines()方法可以读取输出内容。当需要得到外部程序的输出结果时,本方法非常有用

import os

f = os.popen("cat /etc/passwd")

print f.read()

3.commands.getoutput() 将外部程序的输出结果当作字符串返回

import commands

commands.getoutput("ls")

扩展:

* commands.getstatusoutput(cmd) 返回(status, output)

* commands.getoutput(cmd) 只返回输出结果

* commands.getstatus(file) 返回ls -ld file的执行结果字符串,调用了getoutput,不建议使用此方法

4.subprocess

#call函数,命令完成并返回结果

print subprocess.call("ls")

s=subprocess.Popen('cat /etc/passwd',stdout=subprocess.PIPE,shell=True) #当shell=True时,表示在系统默认的shell环境中执行新的进程,此shell在windows表示为cmd.exe,在linux为/bin/sh。

s.stdout.read() #输出得到的结果
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐