Chinaunix
标题:
awk 打印记录问题
[打印本页]
作者:
lklkxcxc
时间:
2012-06-27 16:19
标题:
awk 打印记录问题
各位好!
现有一文本文件内容如下:
app1: en3 U5791.001.99B19L5-P2-C02-T1 00112508B823 77.77.77.154
app1: en1 U5791.001.99B19L5-P2-C09-T1 001125BE40D3 10.168.10.17
app1: en0 U5791.001.99B19LD-P2-C01-T1 001125BE6CB8 192.168.1.239
app2: en3 U5791.001.99B19T1-P2-C06-T1 001125BE6B58 192.168.1.240
app2: en2 U5791.001.99B19T1-P2-C02-T1 00145EB8BC7D 77.77.77.150
app2: en0 U5791.001.99B19T1-P2-C09-T1 001125BE6C23 10.168.10.19
复制代码
打算使用
awk '{a[$1]=($2,$3,$4,$5)}for (i in a)END{print i,a[i] }'
复制代码
得到如下结果:
app1: en3 U5791.001.99B19L5-P2-C02-T1 00112508B823 77.77.77.154
en1 U5791.001.99B19L5-P2-C09-T1 001125BE40D3 10.168.10.17
en0 U5791.001.99B19LD-P2-C01-T1 001125BE6CB8 192.168.1.239
app2: en3 U5791.001.99B19T1-P2-C06-T1 001125BE6B58 192.168.1.240
en2 U5791.001.99B19T1-P2-C02-T1 00145EB8BC7D 77.77.77.150
en0 U5791.001.99B19T1-P2-C09-T1 001125BE6C23 10.168.10.19
复制代码
不能得到想要结果,各位有什么思路,谢谢!
作者:
jils2013
时间:
2012-06-27 16:22
我得先猜你想要的结果,这个任务很艰巨
作者:
kk5234
时间:
2012-06-27 16:27
本帖最后由 kk5234 于 2012-06-27 16:34 编辑
awk -F: '{print a[$1]++?" "$2:$1FS$2}' infile
复制代码
作者:
winway1988
时间:
2012-06-27 16:31
awk '{a[$1]=a[$1]?a[$1] ORS $2 OFS $3 OFS $4 OFS $5:$2 OFS $3 OFS $4 OFS $5}END{for(i in a)print i,a[i]}'
复制代码
作者:
ryh19860922
时间:
2012-06-27 17:06
回复
1#
lklkxcxc
awk '{if($1!=x) {print $0; x=$1} else {$1=""; print$0 } }' file
复制代码
作者:
lklkxcxc
时间:
2012-06-27 17:32
回复
3#
kk5234
搞定谢谢
作者:
lmzopq
时间:
2012-06-27 23:16
本帖最后由 lmzopq 于 2012-06-27 23:18 编辑
[root@server tmp]# awk '{if(!a[$1]++){print $0;next};print " "$2,$3,$4,$5}' 5.txt
app1: en3 U5791.001.99B19L5-P2-C02-T1 00112508B823 77.77.77.154
en1 U5791.001.99B19L5-P2-C09-T1 001125BE40D3 10.168.10.17
en0 U5791.001.99B19LD-P2-C01-T1 001125BE6CB8 192.168.1.239
app2: en3 U5791.001.99B19T1-P2-C06-T1 001125BE6B58 192.168.1.240
en2 U5791.001.99B19T1-P2-C02-T1 00145EB8BC7D 77.77.77.150
en0 U5791.001.99B19T1-P2-C09-T1 001125BE6C23 10.168.10.19
[root@server tmp]# cat 5.txt
app1: en3 U5791.001.99B19L5-P2-C02-T1 00112508B823 77.77.77.154
app1: en1 U5791.001.99B19L5-P2-C09-T1 001125BE40D3 10.168.10.17
app1: en0 U5791.001.99B19LD-P2-C01-T1 001125BE6CB8 192.168.1.239
app2: en3 U5791.001.99B19T1-P2-C06-T1 001125BE6B58 192.168.1.240
app2: en2 U5791.001.99B19T1-P2-C02-T1 00145EB8BC7D 77.77.77.150
app2: en0 U5791.001.99B19T1-P2-C09-T1 001125BE6C23 10.168.10.19
复制代码
欢迎光临 Chinaunix (http://bbs.chinaunix.net/)
Powered by Discuz! X3.2