Python通过SFTP下载网络交换机等设备的配置文件到本地

设备要先开启sftp功能

设备配置文件名,常用: 'startup.cfg'文本格式,'vrpcfg.zip'压缩包格式(里面是vrpcfg.cfg文本文件)

# -*- coding: utf8 -*-
import paramiko
import os, time


def SFTP_DOWNLOAD_FILE(HOST,PORT,USER,PASS,DIR_LOCAL,FILE_REMOTE):
    LOCAL_FILE_NAME = f"{HOST}.{PORT}.{time.strftime('%Y%m%d')}.{FILE_REMOTE}"
    LOCAL_FILE_PATH = os.path.join(DIR_LOCAL, LOCAL_FILE_NAME)
    try:
        sf = paramiko.Transport((HOST,PORT))
        sf.connect(username=USER,password=PASS)
        sftp = paramiko.SFTPClient.from_transport(sf)
        sftp.get(FILE_REMOTE, LOCAL_FILE_PATH)          # 下载
        sf.close()
    except Exception as e:
        print(f"ERROR {e}")    # 打印错误信息
    else:
        print(f"LOCAL_FILE_PATH={LOCAL_FILE_PATH}")


if __name__ == '__main__':
    HOST = '192.168.56.111' #主机
    PORT = 22               #端口
    USER = 'test'           #用户名
    PASS = 'test@pwd@123'   #密码
    DIR_LOCAL = ''          #下载存放目录,空为脚本当前目录
    FILE_REMOTE = 'startup.cfg' #设备配置文件名,常用: 'startup.cfg'文本格式,'vrpcfg.zip'压缩包格式(里面是vrpcfg.cfg文本文件)
    
    SFTP_DOWNLOAD_FILE(HOST,PORT,USER,PASS,DIR_LOCAL,FILE_REMOTE)    # 下载文件

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值