批量上传交换机配置到本地FTP

查看 91|回复 8
作者:hoochanlon   
设计思路:通过本地电脑开启FTP作为服务器,然后登上交换机,交换机再通过FTP传到本地电脑去。
后续过程:在调试过程中注意到在交换机中 put 指令不支持中文名上传。先使用拼音,再改名,csv文件再新增一列拼音,方便后续从拼音替换为中文。
所需软件:IPOP,或其他FTP软件。
  • https://www.52pojie.cn/thread-1127110-1-1.html  (IPOP)

    地址及源码:

  • https://github.com/hoochanlon/scripts/tree/main/d-python-datacom
  • 批量上传交换机配置到本地FTP.py


    import paramiko
    import time
    import os
    import csv
    # 获取当前用户桌面路径
    desktop_path = os.path.join(os.path.expanduser("~"), "Desktop")
    # 读取 CSV 文件并逐行处理
    csv_file_path = os.path.join(desktop_path, "SSH登记表.csv")  # 假设 CSV 文件在桌面
    # ftp_server_ip = "192.168.1.58"  # 本机的 FTP 服务 IP 地址
    ftp_server_ip = "172.16.1.55"
    ftp_username = "admin"  # FTP 用户名
    ftp_password = "123"  # FTP 密码
    try:
        with open(csv_file_path, "r", encoding="utf-8") as csv_file:
            csv_reader = csv.reader(csv_file)
            for row in csv_reader:
                # 解析每一行数据
                if len(row)
    演示效果

    交换机, 上传

  • JuncoJet   

    XPOP是啥软件   功能好多啊
    redapple2015   


    JuncoJet 发表于 2024-11-22 14:16
    XPOP是啥软件   功能好多啊

    IPOP吧?
    JuncoJet   


    redapple2015 发表于 2024-11-22 14:45
    IPOP吧?

    哦          
    leeao1936   

    蛮方便的,谢谢大神分享
    q3125418   

    额。。你这输出也没个日期,
    import paramiko
    device_name = section
    current_time = time.strftime("%Y-%m-%d_%H-%M-%S")
    filename = f"{device_name}_{current_time}.cfg"
    tftp_command = f"tftp x.x.x.x put flash:/startup.cfg {filename}\n"
    hoochanlon
    OP
      


    q3125418 发表于 2024-11-22 16:14
    额。。你这输出也没个日期,
    import paramiko
    device_name = section

    也可以。不打算加日期的,可以说当时只为自己考虑去了,没想这么全。下面这个是加了日期文件夹统一存放,其实看公司要求了,加日期肯定更好。
    单个与批量交换机配置备份
    https://www.52pojie.cn/thread-1984161-1-1.html
    (出处: 吾爱破解论坛)
    yoga2joker   

    先收藏了,谢谢分享
    daxueshengserve   

    支持技术贴,绑定
    您需要登录后才可以回帖 登录 | 立即注册

    返回顶部