awk初涉 本文共有14916个字,关键词: awk是一个相当强大的工具,怎么使用是一门艺术也是技术,有人说过awk的能力是由使用人所掌握的知识决定的。 不瞎扯了,还是回顾一下所学,先巩固一下正则中的一点东西 . 匹配任意一个字符(包含特殊字符) * 匹配前一个字符一次或者任意多次 .* 匹配任意字符任意多次,通常称为贪婪匹配 ? 匹配前面的字符零次或一次,比较严谨的匹配 + 匹配前面的字符一次或多次。 多说一句,+和? 在grep中需要加-E参数或使用egrep,在sed中使用需加-r参数,均为使之支持正则 前方高能,请多留意,先介绍一下awk的几个参数 $0 表示所有域(一行),linux中回车符为$,指定换行使用\n -F 指定定界符,不指定时默认为空格或者tab键 FILENAME 作为参数可以被调用,意为输入awk的文件名 NR 浏览记录的个数(行) NF 浏览记录的域的个数(列) OFS 指定输出的分隔符 awk -F ‘:’ ‘$3==”0″‘ {print$1,$3,$4} 1.txt $3==”0″属于精确匹配,注意等于是两个‘=’,单个则是赋值,也支持表达式 ‘$1~/root/’ 属于泛匹配,只要有‘root’的行都满。 ‘$1=$3+$4’ 属于表达式,输出时$1会被新的值替代。 awk -F ‘:’ ‘$1~/root/’ {OFS “##”; print}1.txt 注:OFS后加分号,不常用 赋值后原结构会发生改变,但可以重新指定分隔符 print 后不跟参数默认为$0 「一键投喂 软糖/蛋糕/布丁/牛奶/冰阔乐!」 赞赏 × 几人行 (๑>ڡ<)☆谢谢老板~ 2元 5元 10元 50元 100元 任意金额 2元 使用微信扫描二维码完成支付 版权声明:本文为作者原创,如需转载须联系作者本人同意,未经作者本人同意不得擅自转载。 随手笔记 2016-12-28 评论 1685 次浏览