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中的json的基本使用方法
Dec 21 Python
浅谈python中列表、字符串、字典的常用操作
Sep 19 Python
一个简单的python爬虫程序 爬取豆瓣热度Top100以内的电影信息
Apr 17 Python
selenium+python 对输入框的输入处理方法
Oct 11 Python
django session完成状态保持的方法
Nov 27 Python
Python线上环境使用日志的及配置文件
Jul 28 Python
Python学习笔记之Zip和Enumerate用法实例分析
Aug 14 Python
python并发编程多进程之守护进程原理解析
Aug 20 Python
Python网络爬虫信息提取mooc代码实例
Mar 06 Python
python基于tkinter制作无损音乐下载工具
Mar 29 Python
win10+anaconda安装yolov5的方法及问题解决方案
Apr 29 Python
用 Python 定义 Schema 并生成 Parquet 文件详情
Sep 25 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制作新闻系统的思路
2006/10/09 PHP
如何在PHP中使用Oracle数据库(5)
2006/10/09 PHP
解决GD中文乱码问题
2007/02/14 PHP
Windows PHP5和Apache的安装与配置
2009/06/08 PHP
php学习之简单计算器实现代码
2011/06/09 PHP
php上传图片存入数据库示例分享
2014/03/11 PHP
php传值赋值和传地址赋值用法实例分析
2015/06/20 PHP
PHP实现事件机制实例分析
2015/06/26 PHP
JQuery Dialog的内存泄露问题解决方法
2010/06/18 Javascript
JavaScript中去掉数组中的重复值的实现方法
2011/08/03 Javascript
解决jquery操作checkbox火狐下第二次无法勾选问题
2014/02/10 Javascript
Js实现滚动变色的文字效果
2014/06/16 Javascript
JS获取客户端IP地址、MAC和主机名的7个方法汇总
2014/07/21 Javascript
JavaScript中length属性的使用方法
2015/06/05 Javascript
基于JavaScript实现定时跳转到指定页面
2016/01/01 Javascript
JS实现为排序好的字符串找出重复行的方法
2016/03/02 Javascript
详解JavaScript的AngularJS框架中的表达式与指令
2016/03/05 Javascript
JQuery用户名校验的具体实现
2016/03/18 Javascript
原生js三级联动的简单实现代码
2016/06/07 Javascript
JavaScript必知必会(三) String .的方法来自何方
2016/06/08 Javascript
jquery层级选择器的实现(匹配后代元素div)
2016/09/05 Javascript
微信小程序使用navigateTo数据传递的实例
2017/09/26 Javascript
js判断浏览器的环境(pc端,移动端,还是微信浏览器)
2020/12/24 Javascript
[48:18]DOTA2-DPC中国联赛 正赛 RNG vs Dynasty BO3 第二场 1月29日
2021/03/11 DOTA
python实现的一个p2p文件传输实例
2014/06/04 Python
Python中无限元素列表的实现方法
2014/08/18 Python
pandas.DataFrame删除/选取含有特定数值的行或列实例
2018/11/07 Python
如何通过Python3和ssl实现加密通信功能
2020/05/09 Python
Python钉钉报警及Zabbix集成钉钉报警的示例代码
2020/08/17 Python
韩国三星旗下的一家超市连锁店:Home Plus
2016/07/30 全球购物
墨西哥网上超市:Superama
2018/07/10 全球购物
英国二手iPhone、音乐、电影和游戏商店:musicMagpie
2018/10/26 全球购物
餐厅考勤管理制度
2014/01/28 职场文书
大学毕业生求职自荐信
2014/02/20 职场文书
2014年教学管理工作总结
2014/12/02 职场文书
某药房的新员工入职告知书!
2019/07/15 职场文书