- 论坛徽章:
- 0
|
本帖最后由 rongpmcu 于 2013-01-09 09:48 编辑
awk -F "[. ]" 'NR==FNR{a[$1"."$2"."$3]=$0}NR>FNR{for(i in a){if(index($0,i)){print a,$5}}}' ip.txt city.txt
或者:
awk -F "[. ]" 'NR==FNR{a[$1"."$2"."$3]=$0}NR>FNR{for(i in a){if(index($0,i)){print a,$5; next}}}' ip.txt city.txt
1.2.6.220 44 北京
1.2.7.119 60 天津
1.2.10.29 210 山东
1.2.3.4 30 山西
1.2.5.100 100 河南
1.2.11.110 150 上海
不要用这个,呵呵 有bug 本身这个命令有bug(不支持相同前缀的ip),还有就是cu有bug 数组显示不出来 a 我是要取a的第i的元素,
但是。。。。 cu的bug也遇到好多次了
这样就可以了,参考楼下的啦 呵呵- # awk -F "[. ]" 'NR==FNR{a[$1"."$2"."$3"."]=$5}NR>FNR{for(i in a){if(index($0,i)){print $0,a[i]; next}}print $0}' city.txt ip.txt
复制代码 |
|