您好,欢迎访问一九零五行业门户网

python操作ssh实现服务器日志下载的方法

本文实例讲述了python操作ssh实现服务器日志下载的方法。分享给大家供大家参考。具体实现方法如下:
#coding:utf-8 ssh操作例子 实现了服务器日志下载 2012-08-24 yywolfimport paramikoimport timehostname=????port=22username=apppassword=????if __name__==__main__:# paramiko.util.log.log_to_file('paramiko.log') s = paramiko.sshclient() s.load_system_host_keys() s.set_missing_host_key_policy(paramiko.autoaddpolicy()) s.connect(hostname,port,username,password,timeout=4) stdin,stdout,stderr = s.exec_command(sh ~/log/check) print stdout.read() s.close() #sftp t = paramiko.transport((hostname,port)) t.connect(username=username,password=password) sftp = paramiko.sftpclient.from_transport(t) files = sftp.listdir(/home/app/log/) for f in files: print f filetime = time.strftime('%y-%m-%d',time.localtime(time.time())) #需要下载的文件 和下载后的文件名 sftp.get(/home/app/log/server.txt,c:\\users\\administrator\\desktop\\server.txt) sftp.get(/home/app/log/+filetime+.log.zip,c:\users\administrator\desktop\\+filetime+.log.zip) #raskey pkey_file = e:\\yy\\tools\\key\\rsa.txt key = paramiko.rsakey.from_private_key_file(pkey_file) s = paramiko.sshclient() s.load_system_host_keys() s.set_missing_host_key_policy(paramiko.autoaddpolicy()) s.connect(hostname,port,username,pkey=key) stdin, stdout, stderr = s.exec_command(ls -l /home/app/log) print stdout.read() s.close() raw_input()
希望本文所述对大家的python程序设计有所帮助。
其它类似信息

推荐信息