码迷,mamicode.com
首页 > 系统相关 > 详细

使用 Linux Shell 编写筛选无 CDP 邻居的 Cisco 交换机端口

时间:2018-11-22 20:59:23      阅读:205      评论:0      收藏:0      [点我收藏+]

标签:ext   The   cee   i+1   bin   sha   lin   筛选   done   

需求
如下是思科交换机所有 UP 的物理端口
GigabitEthernet3/1
GigabitEthernet3/2
GigabitEthernet3/4
GigabitEthernet3/6
GigabitEthernet3/7
GigabitEthernet3/8
GigabitEthernet3/9
GigabitEthernet3/10
GigabitEthernet3/11
GigabitEthernet3/12
GigabitEthernet3/13
GigabitEthernet3/14
GigabitEthernet3/15
GigabitEthernet3/16
GigabitEthernet3/17
GigabitEthernet3/18
GigabitEthernet3/19
GigabitEthernet3/20
GigabitEthernet3/21
GigabitEthernet3/22
GigabitEthernet3/23
GigabitEthernet7/8
GigabitEthernet7/9
GigabitEthernet7/10
GigabitEthernet7/11
GigabitEthernet7/12
GigabitEthernet7/14
GigabitEthernet7/15
GigabitEthernet7/16
GigabitEthernet7/27
GigabitEthernet7/31
GigabitEthernet7/33
GigabitEthernet7/34
GigabitEthernet7/35
GigabitEthernet7/36
GigabitEthernet7/38
GigabitEthernet7/39
GigabitEthernet7/40
GigabitEthernet7/41
GigabitEthernet7/42
GigabitEthernet7/43
GigabitEthernet7/44
GigabitEthernet7/45
GigabitEthernet7/46
GigabitEthernet7/47
GigabitEthernet7/48
GigabitEthernet8/1
GigabitEthernet8/2
GigabitEthernet8/4
GigabitEthernet8/6
GigabitEthernet8/8
GigabitEthernet8/12
GigabitEthernet8/13
GigabitEthernet8/16
GigabitEthernet8/44
GigabitEthernet8/45
GigabitEthernet8/48
GigabitEthernet9/4
GigabitEthernet9/10
GigabitEthernet9/12
GigabitEthernet9/14
GigabitEthernet9/15
GigabitEthernet9/18
GigabitEthernet9/23
GigabitEthernet9/24
GigabitEthernet9/29
GigabitEthernet9/30
GigabitEthernet9/31
GigabitEthernet9/32
GigabitEthernet9/35
GigabitEthernet9/36
GigabitEthernet9/45
GigabitEthernet9/47
GigabitEthernet9/48
如下是具备 CDP 邻居的物理端口(部分信息已经脱敏)
技术分享图片

要求使用 Shell 脚本,将具有 CDP 邻居的物理端口从已经 UP 的物理端口中删除,即保留没有 CDP 邻居且状态为 UP 的端口。

#!/bin/bash

declare -a cdpIntArray
i=0

cut -c18-26 cdp.txt | cut -d " " -f 2 | grep -v "^[^0-9]" | grep -v ‘^$‘ > intlist.txt

while read line
do
        cdpIntArray[$i]=$line
        i=$(($i+1))
done < intlist.txt
echo ${#cdpIntArray[@]}
for ((i=0;i<${#cdpIntArray[@]};i++))
do
        moduleNum="`echo ${cdpIntArray[$i]} | cut -d "/" -f 1`"
        intNum="`echo ${cdpIntArray[$i]} | cut -d "/" -f 2`"
        echo $moduleNum/$intNum
        sed -i "/${moduleNum}\/${intNum}[^0-9]/ d" int.log
done

使用 Linux Shell 编写筛选无 CDP 邻居的 Cisco 交换机端口

标签:ext   The   cee   i+1   bin   sha   lin   筛选   done   

原文地址:http://blog.51cto.com/qinlouke/2320739

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!