1.适用场景

  需要读取(写)多台远程机器下的一个或多个文件,如果要通过 os.system('scp ......')来完成就必须配置免密登陆,比较麻烦

2.准备工作,

  安装依赖

  pip install ssh2,

  如未安装pip可以通过网页下载ssh2.zip文件然后通过动态加载

import os
import imp os.system('unzip ssh2.zip')
imp.load_package('ssh2','./ssh2')

3.具体操作方式,

  

import socket

from odps import ODPS
from ssh2.session import Session
from datetime import date, timedelta, datetime
from ssh2.sftp import LIBSSH2_FXF_READ, LIBSSH2_SFTP_S_IRUSR sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
sock.connect((host, 22)) session = Session()
session.handshake(sock)
session.userauth_password(user, pwd) sftp = session.sftp_init()
channel = session.open_session() channel.execute("cat demo'")
channel.wait_eof()
channel.close()
channel.wait_closed() size, data = channel.read()
files_str = unicode(data, 'utf-8')
while size > 0:
size, data = channel.read()
files_str = files_str + unicode(data, 'utf-8') print files_str

最新文章

  1. android第一行代码-2.activity基本用法
  2. oracle学习笔记系列------oracle 基本操作之基本函数的用法
  3. imx6Q rtl8188etv Android4.3 驱动调试记录
  4. 学习笔记--博弈组合-SG函数
  5. Spring AOP 实现原理与 CGLIB 应用
  6. main函数和启动例程
  7. 【转】国内用户如何加快App Store的访问速度
  8. BoundsChecker使用
  9. nginx trouble shooting
  10. 《C++ Primer》之面向对象编程(二)
  11. 201521123098 《Java程序设计》第9周学习总结
  12. CentOS 7安装Oracle 11gR2以及设置自启动
  13. php实现粘贴截图并完成上传功能
  14. Windows Live Writer 2014版绿色版制作及主题获取
  15. 3.2 2-dim Vector Initialization
  16. TCP/IP协议学习(一)
  17. shell 学习之if语句
  18. BZOJ5071 小A的数字 BZOJ2017年10月月赛 其他
  19. Rancher中的服务升级实验
  20. Script to Collect Log File Sync Diagnostic Information (lfsdiag.sql) (文档 ID 1064487.1)

热门文章

  1. 连接mysql的各种方式
  2. CTF密码学常见加密解密总结
  3. Java模板引擎之Freemarker 学习笔记 一
  4. 吴裕雄--天生自然MySQL学习笔记:MySQL 元数据
  5. pip速度慢解决办法
  6. PAT B1038 统计同成绩学生超时问题
  7. 2019.11.18CTFD搭建记录
  8. 冲刺期末阶段一<公文档案流转管理系统>
  9. Linux&Win双系统下时间显示不正常的问题
  10. mysql my.cnf常用的配置