正则之awk

概述

awk是一个强大的文本分析工具,相对于grep的查找,sed的编辑,awk在其对数据分析并生成报告时,显得尤为强大。简单来说awk就是把文件逐行的读入,以空格为默认分隔符将每行切片,切开的部分再进行各种分析处理(分段处理)。

实例

awk -F ':' '{print $1}' test.txt   $1打印第一段:

b29b29f95c87840d1192209e5a59a64addc.jpg

awk -F ':' '{print $0}' test.txt  $0打印所有

3943a14a3961405858c27dbb4df70bffa40.jpg

11317bf01cebd9e6466d40ab0fc16ff6aa2.jpg

没有-F指定分割符时,默认以空格分段:

9176a7d8fd51e0a2cc58953d17d4caf837b.jpg

可以打印多段,以逗号隔开:

95ab43f3ed0263f4c31468d109adeae7ec7.jpg

打印多段以特殊符号分开:

c5c9b734723caa02010a40f4c24d5f699a1.jpg

打印指定字符的行:

eb2e5701d010105f5caf5b8fad39ba75a00.jpg

分段打印指定字符的行,也支持正则表达式(不用脱义):

c7b864c505c046bc9634e37bb672376045d.jpg

ab49eb88ef857db84b0db9a0b23e93b0c54.jpg

支持多个表达式:

07dc4fbfd9b4743b69761c904e83faf1c0e.jpg

7a3f2366fc4d971a2bb4879c9d432725f87.jpg

c299817eace653896c31c027c033acd0bc1.jpg

支持数学表达式:

cb70bab294c8c4452e6569f456cc0ec5de7.jpg

双引号针对ascii码,单引号针对数字:

9133af28f4d731d9fedc9cdaa0cbab433a7.jpg

字符串需要用双引号:

bdd9556feff1abf91ccab1f3e1545654a9b.jpg

比较

小于:

0d25dfb292ac5d01399a995a4e6dab8b44e.jpg

等于:

38e1cfaa23b5fa2b06be0f694a156dbbeaa.jpg

&&(和):

2a646b453d4fc3a4b1fe15d24a43ca13817.jpg

||(或):

dcad428e2d3acf6e9a07715c0b925435b53.jpg

e15a92cbc0549781b4a9002d9c6712fb769.jpg

OFS分段后指定分割符(写在最前面):

7f882d42a691acc55cc13a064dc20ecc42a.jpg

if条件嵌套:

cb8d5fbc184083f8c52a30284fa20b81ad4.jpg

NR显示行号:

f1b01898a8202921918bceb8b7540c14a0f.jpg

NF显示段数:

d48cdb82fa066e4eea4ec4b1793a0716818.jpg

NR作为判断条件输出:

cca5a6edb4fa8d81adb1e58f5a7aa8d9d67.jpg

5e550f948bc206333134f2523c01fff6e5a.jpg

NF作为判断条件输出:

dc472269147f3d42be4b33a5c1cd60d293a.jpg

NR与NF作为结果输出:

20b7aa6ec37bababff7cd832cbef6110f1b.jpg

赋值:

d3920f842b9f25295e109adcb95d1191bc1.jpg

4966e19e80f9b6b3bbe65765da7cc2557ec.jpg

求第三段所有和:

339d5f7be29e6f2e86f171ec9dea365a26a.jpg

 

 

转载于:https://my.oschina.net/ccLlinux/blog/1841339

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值