python执行scp命令拷贝文件及文件夹到远程主机的目录方法
作者:lsysafe 发布时间:2023-07-10 09:12:19
标签:python,scp,主机,目录
系统环境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
来源:https://blog.csdn.net/lsysafe/article/details/82977634
0
投稿
猜你喜欢
- 概述编程的内核是数学,而测试的本质是计算,专业名词叫容量预估,而测试的大体就是用程序模拟程序,检测程序的正确性,有两个点需要注意,QPS最佳
- 字符替换是一个非常重要的功能,javascript 中有一个 String.replace( ),但是此方法有
- 主要实现功能1、用户输入用户名,在用户名文件中查找对应的用户,若无对应用户名则打印输入错误2、用户名输入正确后,进行密码匹配。输入密码正确则
- 关于CSS中的命名规则(其实我觉得是XHTML元素的命名规则更加合理些)这个问题,已经有很多人在说了,其中也不乏一些真知灼见。不过这种东西也
- 我们知道,在js中,当object作为参数传递到函数中进行处理后,实际上是修改了传入的对象本身(或者说是对象的引用),但很多时候我们并不希望
- 安装时建议你为MySQL管理创建一个用户和组。由该组用户运行mysql服务器并执行管理任务。(也可以以root身份运行服务器,但是不推荐)第
- 代码如下:title=request("title") title=replace(title,"chr(3
- 本文实例讲述了PHP面向对象程序设计之类与反射API。分享给大家供大家参考,具体如下:了解类class_exists验证类是否存在<?
- 利用 CSS 框架,可以简化你的工作,提高工作效率。CSS 框架是一系列 CSS 文件的集合体,包含了基本的元素重置,页面排版、网格布局、表
- 很多网友在经典论坛里说自己的网站为什么色彩上总是有问题,总是看起来没什么精神,没办法吸引人注意。小毅观察了一些网友们设计的网站发现他们在用色
- k-means算法思想较简单,说的通俗易懂点就是物以类聚,花了一点时间在python中实现k-means算法,k-means算法有本身的缺点
- ORA-00600:internal error code,arguments:[num],[?],[?],[?],[?] 产生原因:这种错
- 如果你只使用一个更新日志,你只须清空日志文件,然后移走旧的更新日志文件到一个备份中,然后启用新的更新日志。用下列方法可以强制服务器启用新的更
- 本文深入分析了Symfony控制层。分享给大家供大家参考,具体如下:Symfony中控制层包含了连接业务逻辑与表现的代码,控制层为不同的使用
- 很多人在使用AJAX调用别人站点内容的时候,JS会提示"没有权限"错误,这是XMLHTTP组件的限制-安全起见禁止访问非
- 转:coolcode.cn前几天写了一篇在任意字符集下正常显示网页的方法,里面介绍的很简单,就是把前128个字符以外的字符集都用
- Notepad++是一款不错的编辑器,很轻巧,我很喜欢它。再换个主题,加个代码高亮,看上去就更专业了。如果你是Mac用户,应该听说或使用过T
- 本文实例为大家分享了python实现自动打卡小程序的具体代码,供大家参考,具体内容如下"""湖南大学疫情防控每
- HTTP Request的Header信息1、HTTP请求方式如下表:GET向Web服务器请求一个文件POST向Web服务器发送数据让Web
- python数据类型之间怎么转换?数据如果类型不对,在运行中有交集的话就会出现错误,那怎么让两个类型的数据变成同一个类型的呢首先是字符串,在