- 论坛徽章:
- 54
|
本帖最后由 haooooaaa 于 2017-01-15 09:09 编辑
- cyg@win /tmp$ awk -F: '{gsub(" *: *",":");sub("^ *","");$0=gensub("(:[^ ]+) *([^ ]+:)","\\1:\\2","g",$0);$1=$1}/^Id/{a[$2];b=$2;next}NF>1&&length($2){for(i=1;i<=NF/2;i++){key[$(i*2-1)];all[b,$(i*2-1)]=$(i*2)}}END{s="port";for(i in key)s=s","i;l=split(s,t,",");print s;for(i in a){s=i;for(j=2;j<=l;j++)s=s ","(all[i,t[j]]?all[i,t[j]]:"NULL");print s}}' file
- port,PortVlanJump,Link,SpeedAdvertise,RecentUpTime,EgressTPID,ProtocolVlan,Security,DefaultVlanId,MTU,DownTime,FlowControl,MediaType,Jumbo,Speed,AcceptFrame,Multicastfilter,Duplex,Enable,Class,Mdix
- 1,disabled,down,maxSpeed,0 years 0 days 0 hours 0 minutes 0 seconds,0x8100,disabled,disabled,1,1522B,0 years 0 days 0 hours 5 minutes 51 seconds,disabled,1000BaseT,disabled,10Mbps,all,default,half,enabled,802.3,auto
- 2,disabled,down,maxSpeed,0 years 0 days 0 hours 0 minutes 0 seconds,0x8100,disabled,disabled,1,1522B,0 years 0 days 0 hours 5 minutes 51 seconds,disabled,1000BaseT,disabled,10Mbps,all,default,half,enabled,802.3,auto
复制代码- awk -F: '{gsub(" *: *",":");sub("^ *","");$0=gensub("(:[^ ]+) *([^ ]+:)","\\1:\\2","g",$0);$1=$1}/^Id/{a[$2];b=$2;next}!/^Params|^Status|^ *$/{for(i=1;i<=NF/2;i++){key[$(i*2-1)];all[b,$(i*2-1)]=$(i*2)?$(i*2):"NULL"}}END{s="port";for(i in key)s=s","i;l=split(s,t,",");print s;for(i in a){s=i;for(j=2;j<=l;j++)s=s ","all[i,t[j]];print s}}' file
复制代码
|
|