SED
https://www.regextester.com/1946
Print the string between two parentheses
G8 = P(G1,G3) G9 = P(G3,G4)
- sed 's/.*(\(.*\))/\1/' file
while IFS="()" read a b; do echo "$b"; done < file
LH
sort NH-3ND-R6506E-D-1Cfg | uniq | sed 's/[0-9]*//g' | sort | uniq | sed '/^$/d' > /tmp/x sed 's#ip access-list extended#acl advanced name#g' < NH-3ND-R6506E-D-1Cfg > v1 $ sed 's#any any#ANYDOUBLE ANYTDOUBLE#g' < v1 > v2 $ sed 's#any#ANYSINGLE#g' < v2 > v3 $ sed 's#ANYSINGLE$#destination any#g' < v3 > v4 $ sed 's#ANYSINGLE host#any destination#g' < v4 > v5 $ sed 's#deny ip host#rule deny ip source#g' < v5 > v6 $ sed 's#deny ip#rule deny ip source#g' < v6 > v7 $ sed 's#deny.*tcp#rule deny tcp source#g' < v7 > v8 $ sed 's#eq#eqSINGLE#g' < v8 > v9 $ sed '/eqSINGLE.........$/s#eqSINGLE#destination-port eq#g' < v9 > v10 $ sed '/eqSINGLE.......$/s#eqSINGLE#destination-port eq#g' < v10 > v11 $ sed '/eqSINGLE......$/s#eqSINGLE#destination-port eq#g' < v11 > v12 $ sed '/eqSINGLE.....$/s#eqSINGLE#destination-port eq#g' < v12 > v13 $ sed '/eqSINGLE....$/s#eqSINGLE#destination-port eq#g' < v13 > v14 $ sed '/eqSINGLE...$/s#eqSINGLE#destination-port eq#g' < v14 > v15 $ sed 's#ANYSINGLE eqSINGLE#any source-port eq destination#g' < v15 > v16 $ sed '/ftp-data/s#ANYSINGLE range#destination any destination-port range#g' < v16 > v17 $ sed '/tcp/s#ANYSINGLE range#any source-port range destination#g' < v17 > v18 $ sed '/udp host/s#ANYSINGLE range#0 destination any destination-port range#g' < v18 > v19 $ sed '/udp/s#ANYSINGLE range#destination any destination-port range#g' < v19 > v20 $ sed 's#permit icmp host#rule permit icmp source#g' < v20 > v21 $ sed 's#^.permit icmp#rule permit icmp source#g' < v21 > v22 $ sed 's#ANYDOUBLE ANYTDOUBLE#any destination any#g' < v22 > v23 $ sed '/permit icmp source any destination.*1/s#$# 0#g' < v23 > v24 $ sed '/permit icmp source.*host/s#$# 0#g' < v24 > v25 $ sed '/permit icmp source.*host/s#host#destination#p' < v25 > v26 $ sed '/eq.....$/s#eq#destination-port eq#g' < v8 > v9 # notes $ sed 's#ANYDOUBLE ANYTDOUBLE$#any destination any#g' < v8 > v9 $ sed 's#ANYDOUBLE ANYTDOUBLE#any destination any destination-port#g' < v9 > v10 sed 's#permit ip#rule permit ip source#g' < v1 > v2 sed 's#any any#ANYT ANYT#g' < v2 > v3 $ sed 's#any#ANYTT#g' < v3 > v4 $ sed 's#ANYTT$#destinatioin any#g' < v4 > v5 sed 's#permit tcp host#rule permit tcp source#g' < v5 > v6 $ sed 's#eq telnet host#source-port eq telnet destination#' < v6 > v7 $ sed 's#^.permit tcp#rule permit tcp source#g' < v7 > v8 $ sed '/eq.....$/s/eq/destination-port eq/g' < v8 > v9 $ sed '/eq......host/s/eq/source-port eq/g' < v9 > v10 $ sed '/eq.....host/s/eq/source-port eq/g' < v10 > v11 $ sed '/eq....host/s/eq/source-port eq/g' < v11 > v12 $ sed '/eq.......host/s/eq/source-port eq/g' < v12 > v13
