python执行scp命令拷贝文件及文件夹到远程主机的目录方法
2019-07-08 18:45
2719 查看
系统环境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远程登录Linux操作系统,执行命令、创建目录、上传及下载文件
- linux下scp远程拷贝包含空格的目录或者文件的解决方法
- Python远程登录Linux操作系统,执行命令、创建目录、上传及下载文件
- python写的批量操作远程主机脚本(命令执行,上传、下载文件)
- python写的批量操作远程主机脚本(命令执行,上传、下载文件)
- python写的批量操作远程主机脚本(命令执行,上传、下载文件)
- python检测文件夹变化,并拷贝有更新的文件到对应目录的方法
- 利用python fabric模块写的批量操作远程主机脚本(命令执行,上传、下载文件)
- 【Linux命令】用 scp 命令在不同主机之间拷贝文件或目录
- 使用expect实现远程ssh命令执行和scp拷贝文件
- python写的批量操作远程主机脚本(命令执行,上传、下载文件)
- Ansible介绍、安装、远程执行命令、拷贝文件或者目录、远程执行脚本
- python写的批量操作远程主机脚本(命令执行,上传、下载文件)
- python写的批量操作远程主机脚本(命令执行,上传、下载文件)
- linux命令之远程文件或文件夹拷贝-scp
- python写的批量操作远程主机脚本(命令执行,上传、下载文件)
- LINUX 下面不同主机远程拷贝文件 scp 命令的使用
- Linux远程下载文件的两种方法之 ftp命令和scp命令
- Linux SSH远程文件目录传输命令scp
- Linux SSH远程文件/目录传输命令scp