#!/bin/bash HOSTNAME=/home/rancid/var/rancid/network/configs/$1 #IFS= USER=$(egrep "access-list AnyConnect_" $HOSTNAME | awk '{print $2}' | grep -v "Client_Local_Print" | uniq) for ACLNAME in $USER do IFS= echo echo $ACLNAME ACLS=$(egrep "access-list $ACLNAME" $HOSTNAME) echo $ACLS echo $ACLS | while read -r ACES do echo $ACES echo "---" OBJS=$(perl -e ' ($c) = $ARGV[0] =~ /access-list [^ ]* extended deny|permit ip|udp|tcp any|object[^ ]* ([^ \n]*)(.*)/; print $c; ' "$ACES" ) unset IFS for OBJN in `echo "$OBJS"` do echo $OBJN egrep -A 10 "$OBJN$" $HOSTNAME | egrep -m2 -B 100 "^[ ]" | tail -n +2 L=`egrep -A 10 "$OBJN$" $HOSTNAME | egrep -m2 -B 100 "^[ ]" | tail -n +2` #echo $L if [[ "$L" =~ "group" ]] then LO=$(perl -e ' ($c) = $ARGV[0] =~ /([^ ]*)$/; print $c; ' "$L" ) egrep -A 10 "$LO$" $HOSTNAME | egrep -m2 -B 100 "^[ ]" | tail -n +2 | ts "" fi done done done