首页 > 其他 > 详细

每日一题--5 awk进阶

时间:2018-10-12 10:57:51      阅读:161      评论:0      收藏:0      [点我收藏+]
每周绝望原数据文件: id=aa&bb&type&name=cc bb&id=aa&name=cc&type id=aa&type&bb&name=dd type&id=aa&cc&name=bb id=bb&cc&type&name=bb aa&id=bb&name=bb&type

整理并去重,得到效果:

id=aa&bb&name=cc&type
id=aa&bb&name=dd&type
id=aa&cc&name=bb&type
id=bb&cc&name=bb&type
id=bb&aa&name=bb&type

提示:awk循环、判断、变量赋值、去重机制

第一个里程碑

awk -F ‘&‘ -v OFS=‘&‘ ‘{for(i=1;i<=4;i++)printf"%s" $i;printf "\n"}‘ awk.txt   实现每个遍历了

awk -F ‘&‘ -v OFS=‘&‘ ‘{for(i=1;i<=4;i++){if($i~/^id.*$/)A=$i;if($i~/^[a-z]{2}$/)B=$i;if($i~/^name.*/)C=$i;if($i~/^type$/)D=$i}print A,B,C,D}‘ awk.txt

echo {a..z} | xargs -n 1 >awk.txt

利用awk去除g所在行的上下5行

for j in `awk ‘/^j$/{for(i=NR-5;i<=NR+5;i++)print i}‘ 1.txt `;do awk -v j=$j ‘NR==j{print $0}‘ 1.txt;done

每日一题--5 awk进阶

原文:http://blog.51cto.com/13447608/2299040

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!