吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 865|回复: 3
收起左侧

[求助] python遍历所有的txt文件中指定命令输出信息

[复制链接]
baigei2333 发表于 2023-3-7 08:54
各位大佬好,python小白第一次发帖求助。如题,就是我有多个这种txt文件,然后我想提取从display esn命令输出的回显到display version这中间的部分,请教各位大佬应该怎么编写python脚本?
HRP_S<HWFW66-IB11-FW2>display elabel
/$BoardIntegrationVersion=3.0
HRP_S<HWFW66-IB11-FW2>display esn
ESN of master:18923899898
HRP_S<HWFW66-IB11-FW2>display security-policy rule all
Total:1
7        网络管理                          enable     permit
HRP_S<HWFW66-IB11-FW2>display security-policy rule all | include telnet

HRP_S<HWFW66-IB11-FW2>display security-policy rule all | include ssh
rule name 访问local
  source-zone trust
  destination-zone local
  source-address address-set Net_MGT
  destination-address address-set ip_163.224.37.56/31
  service icmp
  service icmpv6
  service ssh
  service tcp_8443
  action permit
HRP_S<HWFW66-IB11-FW2>display security-policy rule all | include 3389

HRP_S<HWFW66-IB11-FW2>display nat-policy rule all
2022-11-11 18:50:05.970 +08:00
Total:1
RULE ID  RULE NAME                         STATE      ACTION       HITS        
-------------------------------------------------------------------------------
0        default                           enable     no-nat       696320      
-------------------------------------------------------------------------------
HRP_S<HWFW66-IB11-FW2>display version
Huawei Versatile Routing Platform Software
VRP (R) Software, Version 5.170 (USG6600E V600R007C00SPC200)

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

dusagu 发表于 2023-3-7 09:59

可以使用Python的文件处理功能逐行读取文本,使用正则表达式匹配需要提取的部分。提取出每个文件中display esn和display version之间的部分,并将其写入一个新文件中:

import re

#正则表达式
pattern = re.compile(r"display esn\n([\s\S]*)display version")

# 处理多个文件
for filename in ["file1.txt", "file2.txt", "file3.txt"]:
    with open(filename, "r") as f_in, open("output.txt", "a") as f_out:
        # 读取整个文件并进行匹配
        content = f_in.read()
        match = pattern.search(content)
        if match:
            # 写入匹配结果
            f_out.write(match.group(1))

结果会输出到 output.txt中

sdieedu 发表于 2023-3-7 10:12
 楼主| baigei2333 发表于 2023-3-7 10:21
dusagu 发表于 2023-3-7 09:59
[md]可以使用Python的文件处理功能逐行读取文本,使用正则表达式匹配需要提取的部分。提取出每个文件中disp ...

感谢大佬
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-24 23:43

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表