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功能

原文地址:https://www.cnblogs.com/goldenSky/p/10728753.html

时间: 2024-11-08 00:01:36

python实现scp功能的相关文章

为python 添加新功能-dump

一直觉得thinkphp提供的dump函数挺好用的,但是python里面没有,就一直想着写个简单的. dir是我比较常用的一个内置函数了,但是显示效果实在有点受不了,每次我都要从大量的字符串里找到我需要的,眼都花了. 所以我就想,一行显示一个就好了. 所以我就写了一个模块,命名为dp 1 #!/usr/bin/env python 2 #coding:utf-8 3 4 """ 5 dump variable 6 """ 7 def dump(v

Python 实现摄像头功能

正确的程序如下所示: #! /usr/bin/env python # -*- coding: utf-8 -*- from VideoCapture import Device import time import sys,pygame pygame.init() size = width,height = 620,485 speed = [2,2] black = 0,0,0 pygame.display.set_caption('视频窗口') screen = pygame.display

Python不同电脑之间传输文件实现类似scp功能不输密码

SCP vs SFTP 通过paramiko还可以传输文件,如何通过paramiko在计算机之间传输文件,通过阅读官方文档,发现有如下两种方式: sftp = paramiko.SFTPClient.from_transport(ssh.get_transport()) sftp = ssh.open_sftp() 即新建一个SFTPClient对象,该对象复用之前的SSH连接,因此,我们使用sftp传输文件时,不需要再次进行用户认证. 文件上传 In [59]: sftp.put('memor

python专题-爬虫功能

在我们日常上网浏览网页的时候,经常会看到一些好看的图片,我们就希望把这些图片保存下载,或者用户用来做桌面壁纸,或者用来做设计的素材. 我们最常规的做法就是通过鼠标右键,选择另存为.但有些图片鼠标右键的时候并没有另存为选项,还有办法就通过就是通过截图工具截取下来,但这样就降低图片的清晰度.好吧-!其实你很厉害的,右键查看页面源代码. 我们可以通过python 来实现这样一个简单的爬虫功能,把我们想要的代码爬取到本地.下面就看看如何使用python来实现这样一个功能. 一,获取整个页面数据 首先我们

python实现发送邮件功能

前一段时间实现了一个python脚本发送邮件的功能,该脚本是借用smtp服务器发送邮件,邮件以附件的形式发出,如果要添加正文,修改添加即可. #!/usr/bin/env python #coding: utf-8 import smtplib, re, sys, os import xlwt from email.mime.multipart import MIMEMultipart from email.mime.text import MIMEText from email.mime.im

利用python收发邮件功能实现远程电脑的控制

功能并非原创, 只是重复实现了 http://codecloud.net/python-control-128.html 中描述的功能. 实现功能: 通过给固定邮件地址发送命令(包含在主题中)的方式控制远程电脑实现相应功能(譬如关机等, 可以根据实际需要实现更复杂的功能) 实现原理: 远程电脑不断(每隔10s)利用 python 脚本检查邮件服务器是否有新邮件, 如有则对邮件进行分析, 如果包含可执行命令, 则执行相应命令 你需要的: 装有 PYTHON 的 PC; 最好两个邮箱(一个用于接收命

Python配合SCP实现文件批量下发

# -*- coding: utf-8 -*- #!/usr/bin/env python import pexpect,os    #导入需要用到模块 def ssh_cmd(ip, shell_cmd): passwd= '1qaz#EDC' print 'host: %s is connected... ' % ip child = pexpect.spawn('ssh [email protected]%s' % (ip)) fout = file('log.txt','a') chil

python爬虫高级功能

上一篇文章中我们介绍了爬虫的实现,及爬虫爬取数据的功能,这里会遇到几个问题,比如网站中robots.txt文件,里面有禁止爬取的URL,还有爬虫是否支持代理功能,及有些网站对爬虫的风控措施,设计的爬虫下载限速功能. 1.解析robots.txt 首先,我们需要解析robots.txt文件,以避免下载禁止爬取的URL.适用Python自带的robotparser模块,就可以轻松的完成这项工作,如下面的代码. robotparser模块首先加载robots.txt文件,然后通过can_fetch()

python int 内部功能剖析

在python中,一切都是对象!对象由类创建而来,对象所拥有的功能都来自于类.在本节中,我们了解一下int类型对象具有哪些功能,我们平常是怎么使用的. int 类源码分析 class int(object): """ int(x=0) -> int or long int(x, base=10) -> int or long Convert a number or string to an integer, or return 0 if no arguments