python使用Paramiko模块实现远程文件拷贝


Posted in Python onApril 30, 2019

paramiko是用python写的一个模块,遵循SSH2协议,支持以加密和认证的方式,进行远程服务器的连接。利用该模块,可以方便的进行ssh连接和sftp协议进行sftp文件传输以及远程命令执行。

通过安装包安装:

wget http://ftp.dlitz.net/pub/dlitz/crypto/pycrypto/pycrypto-2.6.tar.gz
wget http://www.lag.net/paramiko/download/paramiko-1.7.7.1.tar.gz

tar -zxvf pycrypto-2.6.tar.gz
cd pycrypto-2.6/
python setup.py build && python setup.py install


wget http://www.lag.net/paramiko/download/paramiko-1.7.7.1.tar.gz

tar xvzf paramiko-1.7.7.1.tar.gz
cd paramiko-1.7.7.1/
python setup.py build && python setup.py install

yum安装,简单省事:

yum install python-paramiko -y

简单使用:从远程服务器拷贝文件:

#coding=utf-8
import paramiko, os
def remote_scp(type, host_ip, remote_path, local_path, username, password):
 ssh_port = 22
 try:
  conn = paramiko.Transport((host_ip, ssh_port))
  conn.connect(username=username, password=password)
  sftp = paramiko.SFTPClient.from_transport(conn)
  if type == 'remoteRead':
   if not local_path:
    fileName = os.path.split(remote_path)
    local_path = os.path.join('/tmp', fileName[1])
   sftp.get(remote_path, local_path)

  if type == "remoteWrite":
   sftp.put(local_path, remote_path)

  conn.close()
  return True

 except Exception:
  return False

通过传递操作类型,主机ip,远程路径和本地路径,用户名密码即可实现文件的远程拷贝。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python 从列表中取值和取索引的方法
Dec 25 Python
解决Django一个表单对应多个按钮的问题
Jul 18 Python
详解python pandas 分组统计的方法
Jul 30 Python
python join方法使用详解
Jul 30 Python
Python爬虫学习之翻译小程序
Jul 30 Python
python+django+rest框架配置创建方法
Aug 31 Python
pytorch-RNN进行回归曲线预测方式
Jan 14 Python
Python txt文件常用读写操作代码实例
Aug 03 Python
Python self用法详解
Nov 28 Python
Django展示可视化图表的多种方式
Apr 08 Python
python爬虫框架feapde的使用简介
Apr 20 Python
Python+tkinter实现高清图片保存
Mar 13 Python
Django学习笔记之为Model添加Action
Apr 30 #Python
Python Opencv实现图像轮廓识别功能
Mar 23 #Python
python opencv实现图像边缘检测
Apr 29 #Python
Python Django给admin添加Action的方法实例详解
Apr 29 #Python
python实现微信机器人: 登录微信、消息接收、自动回复功能
Apr 29 #Python
Python opencv实现人眼/人脸识别以及实时打码处理
Apr 29 #Python
python实现微信每日一句自动发送给喜欢的人
Apr 29 #Python
You might like
PHP字符转义相关函数小结(php下的转义字符串)
2007/04/12 PHP
php+xml编程之xpath的应用实例
2015/01/24 PHP
thinkphp3.2中实现phpexcel导出带生成图片示例
2017/02/14 PHP
PHP 中魔术常量的实例详解
2017/10/26 PHP
TP(thinkPHP)框架多层控制器和多级控制器的使用示例
2018/06/13 PHP
Laravel 微信小程序后端搭建步骤详解
2019/11/26 PHP
破除一些网站复制、右键限制
2006/11/04 Javascript
Javascript动态创建div的方法
2015/02/09 Javascript
jquery之别踩白块游戏的简单实现
2016/07/25 Javascript
javascript简单实现跟随滚动条漂浮的返回顶部按钮效果
2016/08/19 Javascript
JavaScript学习笔记--常用的互动方法
2016/12/07 Javascript
vue实现全选、反选功能
2020/11/17 Javascript
基于Bootstrap table组件实现多层表头的实例代码
2017/09/07 Javascript
JS中的事件委托实例浅析
2018/03/22 Javascript
vue中el-upload上传图片到七牛的示例代码
2018/10/19 Javascript
[57:50]DOTA2上海特级锦标赛主赛事日 - 4 胜者组决赛Secret VS Liquid第二局
2016/03/05 DOTA
python进阶教程之循环对象
2014/08/30 Python
python中getaddrinfo()基本用法实例分析
2015/06/28 Python
Python实现识别手写数字 简易图片存储管理系统
2018/01/29 Python
python 编码规范整理
2018/05/05 Python
点球小游戏python脚本
2018/05/22 Python
python pandas实现excel转为html格式的方法
2018/10/23 Python
python版百度语音识别功能
2019/07/09 Python
python装饰器练习题及答案
2019/11/01 Python
Python内置加密模块用法解析
2019/11/25 Python
澳大利亚领先的在线礼品网站:Gifts Australia
2020/08/15 全球购物
毕业生求职信的经典写法
2014/01/31 职场文书
师德师风个人整改措施
2014/10/27 职场文书
2014年客房部工作总结
2014/11/22 职场文书
小学二年级数学教学计划
2015/01/20 职场文书
欠条格式范本
2015/07/03 职场文书
CSS 文字装饰 text-decoration & text-emphasis 详解
2021/04/06 HTML / CSS
vue使用v-model进行跨组件绑定的基本实现方法
2021/04/28 Vue.js
OpenCV实现反阈值二值化
2021/11/17 Java/Android
Redis分布式锁的7种实现
2022/04/01 Redis
Win11 Build 22000.829更新补丁KB5015882发布(附更新修复内容汇总)
2022/07/15 数码科技