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

yipeiwu_com6年前服务器

本文实例讲述了python操作ssh实现服务器日志下载的方法。分享给大家供大家参考。具体实现方法如下:

#coding:utf-8
"""
  ssh操作例子 实现了服务器日志下载
  2012-08-24
  yywolf
"""
import paramiko
import time
hostname="????"
port=22
username="app"
password="????"
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程序设计有所帮助。

相关文章

python快速建立超简单的web服务器的实现方法

作为临时测试用python命令来搭建web测试是最好不过的选择了; CD切换到当前目录只需要一句python命令就迅速搭建好了简单的web服务器,python linux自带又无需额外配...

Pycharm保存不能自动同步到远程服务器的解决方法

Pycharm保存不能自动同步到远程服务器的解决方法

Deployment已经设置了远程服务,Pycharm也已经取消自动保存,确保Ctrl+S可以触发,可是依旧不能自动同步到远程服务器。捣鼓了半天发现在Delployment的mappin...

使用php判断服务器是否支持Gzip压缩功能

Gzip可以压缩网页大小从而达到加速打开网页的速度,目前主流的浏览器几乎都支持这个功能,但开启Gzip是需要服务器支持的,在这里我们简单的使用php来判断服务器是否支持Gzip功能。 新...

php实现从ftp服务器上下载文件树到本地电脑的程序

复制代码 代码如下:/* 用ftp_nlist()函授时,返回的数组值会有两种类型:因服务器不同而异 a:单独的文件名 b:包含目录的文件名。 如果挪用,请注意更改此处。 */ <...

python实现静态web服务器

HTTP协议简介 HTTP请求 1:浏览器首先向服务器发送HTTP请求,请求包括: 方法:GET还是POST,GET仅请求资源,POST会附带用户数据; 路径:/full/url/pat...