python实现scp功能
时间:2019-04-18
本文章向大家介绍python实现scp功能,主要包括python实现scp功能使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
最近公司有一个需求,需要把服务器A上的任务放到服务器B上,因为B上有HTTP,并且可以被外网访问,但是直接通过shell的scp,每次都需要输入密码。这里用python简单实现一下
直接上代码:
import paramiko
import sys
def deleteRemoteFile(dt):
ssh = paramiko.SSHClient()
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())#第一次登录的认证信息
ssh.connect(hostname='192.168.72.208', port=22, username='gold', password='gold!23') # 连接服务器
stdin, stdout, stderr = ssh.exec_command('rm /home/gold/data//*') # 执行命令
ssh.close()
def uploadFile2Remote(dt):
transport = paramiko.Transport(('192.168.72.208', 65522))
transport.connect(username='gold', password='gold!23')
sftp = paramiko.SFTPClient.from_transport(transport)
sftp.put('/home/gold/data/broad.png', '/home/gold/data/broad_%s.png' % dt)
transport.close()
if __name__ == '__main__':
unix_ts = sys.argv[1]
deleteRemoteFile(unix_ts)
uploadFile2Remote(unix_ts)
注意:
* 这里有一个坑,就是sftp在put的时候,需要把在208服务器上的文件名写出来,代码执行的逻辑想当于先touch 一个文件,然后往这个文件里写数据,如果不加文件名,直接到文件夹,就会报错
具体的可以参考:
python实现ssh及sftp功能
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- 想用深度学习谱写自己的音乐吗?这篇指南来帮你!(附代码)
- 你不是说你会aop吗?
- 开源:推荐一个不错的离线IP地址定位库
- 武磊告别西甲!Python带你解读「全村的希望」武磊职业数据
- 谁在崛起,谁在没落?新一线城市竞争力盘点,用Python绘制动态图带你看懂!
- 两数相加
- 这样设置 IDEA,让你爽到飞起!
- Tensorflow基础入门十大操作总结
- Spring Boot 2.x基础教程:使用EhCache缓存集群
- 白平衡初探
- Activity的启动过程详解(基于10.0源码)
- Activity生命周期-你真的了解吗?
- Activity启动模式
- Redis6.0主从、哨兵、集群搭建和原理
- Linux入门学习笔记二