- 论坛徽章:
- 0
|
cat 1.txt
BJ5865;BJ5865A;0;UNCONC;GPRS;RXOTRX-157-0;9;4;ACTIVE;1;24;12;2;CONFIG
BJ5865;BJ5865A;1;UNCONC;131;RXOTRX-157-1;9;4;ACTIVE;1;24;12;2;CONFIG
BJ5865;BJ5865A;1;CONC;134;RXOTRX-157-2;9;4;ACTIVE;1;24;12;2;UNUSED
BJ5865;BJ5865A;1;CONC;137;RXOTRX-157-3;9;4;ACTIVE;1;24;12;2;UNUSED
统计文件1.txt中,$1,$2相等的情况下,统计$NF==CONFIG的个数,并将统计的结果放在$1,$2相等的所有行最后一个域
尝试
nawk 'BEGIN{OFS=FS=";"}NR==FNR{if($NF=="CONFIG")a[$1,$2,$NF]++;next}{if(a[$1,$2,$NF]>0) {print $0,a[$1,$2,$NF]}else{print $0";0"}}' 1.txt 1.txt
得到的结果是
BJ5865;BJ5865A;0;UNCONC;GPRS;RXOTRX-157-0;9;4;ACTIVE;1;24;12;2;CONFIG;2
BJ5865;BJ5865A;1;UNCONC;131;RXOTRX-157-1;9;4;ACTIVE;1;24;12;2;CONFIG;2
BJ5865;BJ5865A;1;CONC;134;RXOTRX-157-2;9;4;ACTIVE;1;24;12;2;UNUSED;0
BJ5865;BJ5865A;1;CONC;137;RXOTRX-157-3;9;4;ACTIVE;1;24;12;2;UNUSED;0
想要的结果是,
BJ5865;BJ5865A;0;UNCONC;GPRS;RXOTRX-157-0;9;4;ACTIVE;1;24;12;2;CONFIG;2
BJ5865;BJ5865A;1;UNCONC;131;RXOTRX-157-1;9;4;ACTIVE;1;24;12;2;CONFIG;2
BJ5865;BJ5865A;1;CONC;134;RXOTRX-157-2;9;4;ACTIVE;1;24;12;2;UNUSED;2
BJ5865;BJ5865A;1;CONC;137;RXOTRX-157-3;9;4;ACTIVE;1;24;12;2;UNUSED;2 |
|