首页 > 编程语言 >使用python paramiko模块将本地文件上传到远程主机的指定目录

使用python paramiko模块将本地文件上传到远程主机的指定目录

时间:2023-07-01 12:56:10浏览次数:48  
标签:remote python 主机 目录 模块 now 远程 paramiko 客户端

使用python paramiko模块将本地文件上传到远程主机的指定目录

这个代码首先定义了本地文件名和远程文件名,然后使用datetime模块获取当前日期和时间,并使用字符串格式化功能生成了远程目录和文件名。在这个示例中,远程目录是/path/to/remote/directory/年份/月份/日期/,文件名是小时-分钟-秒数.txt

接下来,定义了远程主机的参数,包括主机名、端口、用户名和密码。然后,创建了一个SSH客户端,并使用connect方法连接到远程主机。在连接到远程主机之后,创建了一个SFTP客户端。

在上传文件之前,使用try-except语句检查远程目录是否存在。如果目录不存在,则使用SFTP客户端的mkdir方法创建目录。最后,使用put方法将本地文件上传到远程主机指定的目录和文件名。最后,关闭了SFTP客户端和SSH客户端。

import os
import paramiko
import datetime

# 定义本地文件名和远程文件名
local_filename = "1.txt"
now = datetime.datetime.now()
remote_directory = f"/path/to/remote/directory/{now.year}/{now.month}/{now.day}/"
remote_filename = f"{now.hour}-{now.minute}-{now.second}.txt"

# 定义远程主机参数
hostname = "10.1.1.1"
port = 22
username = "admin"
password = "password"

# 创建SSH客户端
ssh = paramiko.SSHClient()
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())

# 连接远程主机
ssh.connect(hostname=hostname, port=port, username=username, password=password)

# 创建SFTP客户端
sftp = ssh.open_sftp()

# 创建远程目录
try:
    sftp.stat(remote_directory)
except IOError:
    sftp.mkdir(remote_directory)

# 上传文件
sftp.put(local_filename, remote_directory + remote_filename)

# 关闭SFTP客户端和SSH客户端
sftp.close()
ssh.close()

 

标签:remote,python,主机,目录,模块,now,远程,paramiko,客户端
From: https://www.cnblogs.com/ken-yu/p/17519138.html

相关文章

  • 使用python生成随机密码
    使用python生成随机密码,密码长度13位,一般密码文件不能以?和!开头的,需要将这两个开头的密码文件排除掉。有两种方式。第一种方式importrandomimportstring#定义密码长度password_length=13#定义密码字符集合password_characters=string.ascii_letters+string.d......
  • 国产MCU-CW32F030开发学习-OLED模块
    国产MCU-CW32F030开发学习-OLED模块硬件平台CW32_48F大学计划板CW32_IOT_EVA物联网开发评估套件0.96IIColed模块软件平台KeilMDK5.31IAR串口调试助手IIC总线处理器和芯片间的通信可以形象的比喻成两个人讲话:1、你说的别人得能听懂:双方约定信号的协议。2、你......
  • 国产MCU-CW32F030开发学习-ST7735 LCD模块
    国产MCU-CW32F030开发学习-ST7735LCD模块硬件平台CW32_48F大学计划板CW32_IOT_EVA物联网开发评估套件0.96IIColed模块ST7735LCD模块硬件接口使用的2.54mm间距的排针接口,这使用杜邦线进行连接.ST7735参数供电电压3.3~5.5V驱动ICST7735分辨率12......
  • Python-练脑系列-04依旧是数据结构
    前言......
  • 面向对象编程Python:类、对象和继承
    面向对象编程(Object-OrientedProgramming,简称OOP)是一种常用的编程范式,它将数据和操作数据的函数封装在一起,以创建对象。Python是一种支持面向对象编程的高级编程语言,它提供了类(class)、对象(object)和继承(inheritance)等概念,使得代码更加模块化、可维护性更高。本文将介绍Python中的......
  • python执行终端命令并获得输出结果
    兼容windows和linux的终端执行函数defshell_exec(cmd:str)->str:  """ 执行终端命令,输出终端打印结果 :paramcmd: :return: """  withos.popen(cmd)asfp:    bf=fp._stream.buffer.read()  out=bf.decode().strip()  retu......
  • 16.python-单例模式
    python-单例模式单例模式适用于需要共享对象的场景单例模式,也叫单子模式,是一种常用的软件设计模式。在应用这个模式时,单例对象的类必须保证只有一个实例存在。许多时候整个系统只需要拥有一个的全局对象,这样有利于我们协调系统整体的行为。比如在某个服务器程序中,该服务器的配......
  • python类与对象
    在Python中,类是一种用于创建对象的蓝图或模板。它们定义了对象的属性和方法。对象是类的实例化,它们是具体的、实际存在的实体。要定义一个类,可以使用class关键字,后面跟着类的名称。类名称通常使用首字母大写的驼峰命名法。下面是一个简单的类的示例:classPerson:def__init__(......
  • IDApython的学习
    IDApython的学习我的IDA情况:IDA7.7,idapython3.8这个可以作为文件导入和命令行内输入,我一般习惯命令行这里要注意是python不是IDC访问原数据idc.get_wide_byte(ea)//获取单字节,按整形解释idc.get_wide_word(ea)//获取双字节,按整形解释idc.get_wide_dword(ea)//获取......
  • python随笔
    一,安装模块windows环境下安装模块直接在CMD里面,运行命令:pipinstallparamiko, 删除命令,pipuninstallparamiko 用python连接linux,然后运行命令:importparamikohostname='192.168.1.112'username='root'password='123456'ssh=paramiko.SSHClient()ssh.set_miss......