python执行scp命令拷贝文件及文件夹到远程主机的目录方法


Posted in Python onJuly 08, 2019

系统环境centos7

python2.7

先在操作系统安装expect

[root@V71 python]# vi 3s.py

#!/usr/bin/python
#coding:utf-8
import sys,re
import os
import subprocess

#scp file to remote node.
def scpFileToRemoteNode(user,ip,password,localsource,remotedest,port=22):

  SCP_CMD_BASE = r"""
      expect -c "
      set timeout 300 ;
      spawn scp -P {port} -r {localsource} {username}@{host}:{remotedest} ;
      expect *assword* {{{{ send {password}\r }}}} ;
      expect *\r ;
      expect \r ;
      expect eof
      "
  """.format(username=user,password=password,host=ip,localsource=localsource,remotedest=remotedest,port=port)
  SCP_CMD = SCP_CMD_BASE.format(localsource = localsource)
  print "execute SCP_CMD: ",SCP_CMD
  p = subprocess.Popen( SCP_CMD , stdout=subprocess.PIPE, stderr=subprocess.PIPE, shell=True)
  p.communicate()

  os.system(SCP_CMD)
  
  
scpFileToRemoteNode("root","192.168.156.72","密码","/tmp/var/log","/etc/",22)

 

执行脚本:

[root@V71 python]# python 3s.py 
execute SCP_CMD:  
      expect -c "
      set timeout 300 ;
      spawn scp -P 22 -r /tmp/var/log root@192.168.156.72:/etc/ ;
      expect *assword* { send 密码\r } ;
      expect *\r ;
      expect \r ;
      expect eof
      "
  
spawn scp -P 22 -r /tmp/var/log root@192.168.156.72:/etc/
root@192.168.156.72's password: 
messages                                                               100% 802KB 802.1KB/s  00:00

以上这篇python执行scp命令拷贝文件及文件夹到远程主机的目录方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python自动化报告的输出用例详解
May 30 Python
对python中两种列表元素去重函数性能的比较方法
Jun 29 Python
Python读取txt内容写入xls格式excel中的方法
Oct 11 Python
Python常用的json标准库
Feb 19 Python
pandas 数据结构之Series的使用方法
Jun 21 Python
django框架model orM使用字典作为参数,保存数据的方法分析
Jun 24 Python
Python 硬币兑换问题
Jul 29 Python
PyQt5+Caffe+Opencv搭建人脸识别登录界面
Aug 28 Python
python数据化运营的重要意义
Nov 25 Python
python实点云分割k-means(sklearn)详解
May 28 Python
Python2.6版本pip安装步骤解析
Aug 17 Python
python如何调用百度识图api
Sep 29 Python
使用python socket分发大文件的实现方法
Jul 08 #Python
python查看文件大小和文件夹内容的方法
Jul 08 #Python
python 搜索大文件的实例代码
Jul 08 #Python
代码实例讲解python3的编码问题
Jul 08 #Python
Python参数类型以及常见的坑详解
Jul 08 #Python
python里运用私有属性和方法总结
Jul 08 #Python
python设计微型小说网站(基于Django+Bootstrap框架)
Jul 08 #Python
You might like
PHP 用数组降低程序的时间复杂度
2009/12/04 PHP
PHP中10个不常见却非常有用的函数
2010/03/21 PHP
php中使用Imagick实现图像直方图的实现代码
2011/08/30 PHP
PHP 正则表达式小结
2015/02/12 PHP
PHP处理数组和XML之间的互相转换
2016/06/02 PHP
jQuery EasyUI API 中文文档 - Form表单
2011/10/06 Javascript
JavaScript 代码压缩工具小结
2012/02/27 Javascript
jquery创建表格(自动增加表格)代码分享
2013/12/25 Javascript
JavaScript简介
2015/02/15 Javascript
jquery实现表格本地排序的方法
2015/03/11 Javascript
javascript中递归函数用法注意点
2015/07/30 Javascript
JavaScript控制浏览器全屏及各种浏览器全屏模式的方法、属性和事件
2015/12/20 Javascript
JS实现图片的不间断连续滚动的简单实例
2016/06/03 Javascript
使用bootstrap validator的remote验证代码经验分享(推荐)
2016/09/21 Javascript
Nodejs基于LRU算法实现的缓存处理操作示例
2017/03/17 NodeJs
xmlplus组件设计系列之网格(DataGrid)(10)
2017/05/05 Javascript
AngularJS集合数据遍历显示的实例
2017/12/27 Javascript
vue中进入详情页记住滚动位置的方法(keep-alive)
2018/09/21 Javascript
在vue项目中,将juery设置为全局变量的方法
2018/09/25 Javascript
推荐一个基于Node.js的表单验证库
2019/02/15 Javascript
vue router 跳转时打开新页面的示例方法
2019/07/28 Javascript
layui type2 通过url给iframe子页面传值的例子
2019/09/06 Javascript
JS实现点击掉落特效
2021/01/29 Javascript
Python装饰器原理与用法分析
2018/04/30 Python
Python进程间通信multiprocess代码实例
2020/03/18 Python
Python 跨.py文件调用自定义函数说明
2020/06/01 Python
详解Python IO口多路复用
2020/06/17 Python
美国领先的奢侈手表在线零售商:WatchMaxx
2017/12/17 全球购物
办公室前台岗位职责范本
2013/12/10 职场文书
生产部主管岗位职责
2014/01/06 职场文书
周年庆典主持词
2014/04/02 职场文书
领导班子整改措施
2014/10/24 职场文书
2016年优秀党务工作者先进事迹材料
2016/02/29 职场文书
解决golang在import自己的包报错的问题
2021/04/29 Golang
python3+PyQt5+Qt Designer实现界面可视化
2021/06/10 Python
Android中的Launch Mode详情
2022/06/05 Java/Android