码迷,mamicode.com
首页 > 编程语言 > 详细

python中常用到的模块和包名称

时间:2016-04-09 01:48:59      阅读:255      评论:0      收藏:0      [点我收藏+]

标签:python 常用模块

1 paramiko  (基于openssh,python封装的ssh)

模块python自带


用法:

import paramiko                                          
ssh = paramiko.SSHClient()                               
ssh.load_system_host_keys()                              
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
ssh.connect(hostname=‘192.168.100.20‘,port=58422,username=‘oldboy‘)
stdin, stdout,stderr=ssh.exec_command(‘uptime‘)    
                
type(stdout)
paramiko.ChannelFile
print stderr.readlines()
[]
print stdout.readlines()
[‘ 21:35:05 up 1 day, 55 min,  2 users,  load average: 0.00, 0.00, 0.00\n‘]


相当于shell当中的 

ssh -p58422 oldboy@192.168.100.20 -o StrictHostKeyChecking=no ‘uptime‘


2 subprocess(尽量不要用这个模块,返回不美观,如果只是执行shell命令推荐commands模块)

python自带模块

参考:http://www.jb51.net/article/48086.htm

常用fork子进程执行shell命令,可以返回结果和返回值

举例:
只需要返回值

In [6]: retcode = subprocess.call(‘ls -l‘, shell=True)
total 12
-rw-rw-r--. 1 oldboy oldboy 239 Jan 19 21:13 access.log
-rw-rw-r--. 1 oldboy oldboy 458 Jan 19 20:50 arp.txt
-rw-r--r--. 1 oldboy oldboy 184 Jan 16 12:04 hosts
In [7]: print retcode
0


注意: 

shell默认为False,等于 retcode = subprocess.call(["ls", "-l"])  列表的形式第一个为命令,后面的都作为参数传递


需要返回值

child1 = subprocess.Popen(["cat","/etc/passwd"], stdout=subprocess.PIPE)
child1.stdout.readlines()


3 comands模块

python自带模块

 status,output = commands.getstatusoutput(‘cat /etc/passwd‘)

优点: 无论命令执行错误与正确,正确输出和错误输出都以字符串原样的字符串形式传递给output



4 shutil模块

python自带模块

参考:http://www.jb51.net/article/50070.htm

作用:文件的拷贝,因为os.模块中没有拷贝文件或者目录的操作,所以shutil这个模块来取代这个短处

shutil.copyfile( src, dst) 从源src复制到dst中去。当然前提是目标地址是具备可写权限。抛出的异常信息为IOException. 如果当前的dst已存在的话就会被覆盖掉
shutil.copyfile(‘/etc/passwd‘,‘/tmp‘)
shutil.copytree(‘/tmp/d1/‘,‘/tmp/d2‘)



本文出自 “崔德华运维打工从业路” 博客,请务必保留此出处http://cuidehua.blog.51cto.com/5449828/1761922

python中常用到的模块和包名称

标签:python 常用模块

原文地址:http://cuidehua.blog.51cto.com/5449828/1761922

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!