【问题标题】:Bash script to audit Cisco configuration用于审计 Cisco 配置的 Bash 脚本
【发布时间】:2015-01-10 03:45:02
【问题描述】:

我目前正在编写一个脚本来从 cisco 配置生成报告以用于审计目的。使用“grep”命令,我能够成功捕获全局配置。

但挑战在于每个界面都做到这一点。例如,我想知道哪些接口有这些行 'no ip redirects'、'no ip unreachables' 等。我如何在 bash 中完成此操作?

提前谢谢你!

【问题讨论】:

  • 您应该在问题中添加更多详细信息,例如您尝试了什么、获得了哪些输出、您希望输出如何等

标签: bash grep cisco audit cisco-ios


【解决方案1】:

grep 无法轻松做到这一点,但awk 处理:

cat file
!
interface GigabitEthernet0/13
 description Server_32_main
 spanning-tree portfast
 no ip redirects
!
interface GigabitEthernet0/14
 description Server_32_log
 switchport access vlan 666
 spanning-tree portfast
!
interface GigabitEthernet0/15
 description UPS_20
 spanning-tree portfast
!

如您所见,每个组都由! 分隔,因此我们使用它来分隔每条记录。
要仅获取接口名称,请执行以下操作:

awk -v RS="!" -F"\n" '/no ip redirects/ {print $2}' file
interface GigabitEthernet0/13

要获取接口配置,请执行以下操作:

awk -v RS="!" '/no ip redirects/' file

interface GigabitEthernet0/13
 description Server_32_main
 spanning-tree portfast
 no ip redirects

一次性获得更多模式:

awk -v RS="!" '/no ip redirects/ || /no ip unreachables/' file

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-09-16
    • 1970-01-01
    • 1970-01-01
    • 2018-01-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多