希望刪除IP地址前三段相同的多余重復行。測試文本如下:
# cat 1.txt2.1.10.12.1.10.22.11.0.12.11.0.2
如果數組下標不加引號,在這個特殊的情況下會被強制轉換為數字,最終導致統計失?。?/p>
# awk 'BEGIN{FS=OFS="."}{if(!a[$1.$2.$3]++)print}' 1.txt2.1.10.1# awk -F '.' '{a[$1.$2.$3]++;}END{for(i in a)print i" "a[i]}' 1.txt2110 4數組下標加上引號之后,一切恢復正常:
# awk 'BEGIN{FS=OFS="."}{if(!a[$1"."$2"."$3]++)print}' 1.txt2.1.10.12.11.0.1# awk -F '.' '{a[$1"."$2"."$3]++;}END{for(i in a)print i" "a[i]}' 1.txt2.11.0 22.1.10 2擴展閱讀:
http://www.gnu.org/software/gawk/manual/html_node/Variable-Typing.html
|
新聞熱點
疑難解答