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设计模式中单例模式的实现及在Tornado中的应用
Mar 02 Python
python使用opencv读取图片的实例
Aug 17 Python
python添加模块搜索路径方法
Sep 11 Python
代码讲解Python对Windows服务进行监控
Feb 11 Python
关于Python的一些学习总结
May 25 Python
对Python中list的倒序索引和切片实例讲解
Nov 15 Python
python 读取文件并把矩阵转成numpy的两种方法
Feb 12 Python
使用WingPro 7 设置Python路径的方法
Jul 24 Python
python opencv圆、椭圆与任意多边形的绘制实例详解
Feb 06 Python
Python基于class()实现面向对象原理详解
Mar 26 Python
使用IPython或Spyder将省略号表示的内容完整输出
Apr 20 Python
python报错TypeError: ‘NoneType‘ object is not subscriptable的解决方法
Nov 05 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
php5 mysql分页实例代码
2008/04/10 PHP
使用Curl进行抓取远程内容时url中文编码问题示例探讨
2013/10/29 PHP
PHP实现将textarea的值根据回车换行拆分至数组
2015/06/10 PHP
Yii2框架实现注册和登录教程
2016/09/30 PHP
PHP中rename()函数的妙用讲解
2019/02/28 PHP
ajax无刷新动态调用股票信息(改良版)
2008/11/01 Javascript
为JavaScript提供睡眠功能(sleep) 自编译JS引擎
2010/08/16 Javascript
通过Jquery遍历Json的两种数据结构的实现代码
2011/01/19 Javascript
jquery单行文字向上滚动效果示例
2014/03/06 Javascript
js对象内部访问this修饰的成员函数示例
2014/04/27 Javascript
jquery获取css的color值返回RGB的方法
2015/12/18 Javascript
使用node+vue.js实现SPA应用
2016/01/28 Javascript
jQuery实现侧浮窗与中浮窗切换效果的方法
2016/09/05 Javascript
详解Vue用axios发送post请求自动set cookie
2017/05/10 Javascript
使用jquery的jsonp如何发起跨域请求及其原理详解
2017/08/17 jQuery
vue异步axios获取的数据渲染到页面的方法
2018/08/09 Javascript
详解JavaScript作用域和作用域链
2019/03/19 Javascript
[00:58]PWL开团时刻DAY5——十人开雾0换5
2020/11/04 DOTA
跟老齐学Python之使用Python查询更新数据库
2014/11/25 Python
Python实现从百度API获取天气的方法
2015/03/11 Python
Python函数式编程指南(三):迭代器详解
2015/06/24 Python
Python简单计算文件夹大小的方法
2015/07/14 Python
python 匹配url中是否存在IP地址的方法
2018/06/04 Python
Python字典循环添加一键多值的用法实例
2019/01/20 Python
python 获取当前目录下的文件目录和文件名实例代码详解
2020/03/10 Python
美国老牌主机服务商:iPage
2016/07/22 全球购物
德国最大的设计师鞋网上商店:Budapester
2017/12/07 全球购物
数学专业毕业生自荐信
2013/11/10 职场文书
班级标语大全
2014/06/21 职场文书
2014年学校工作总结
2014/11/20 职场文书
2014年车间主任工作总结
2014/12/10 职场文书
2015年八一建军节活动总结
2015/03/20 职场文书
单位提档介绍信
2015/10/22 职场文书
SQL实现LeetCode(176.第二高薪水)
2021/08/04 MySQL
python多线程方法详解
2022/01/18 Python
Nginx实现负载均衡的项目实践
2022/03/18 Servers