awk命令学习总结

简介



awk功能与sed相似,都是用来进行文本处理的。

awk可以从文件或字符串中基于指定规则浏览和抽取信息,再进行其他文本操作。





执行过程



awk有BEGIN和END两个特殊的字段,执行过程为:

1.读入文件前执行BEGIN字段的命令

2.主输入循环,对每个输入文件进行处理

3.读取文件完毕,执行END字段命令




记录和域


awk认为输入文件是结构化的,默认情况下每一行为一条记录,行中以空格分割的为域。

awk用来处理匹配记录的域,$1为第一个域,$0为所有的域。如果匹配命令为空,则处理所有的记录。

FS可以设置域的分隔符,RS可以设置记录的分隔符。



表达式


awk与c语言相似,判断相等时用 ==



举例



awk   ' /^$/{print "This is a blank line ."} '  inputfile


在 ‘  ’ 之间为awk处理命令,一般先由BEGIN来设置FS和RS,在由正则表达式匹配需要处理的记录,在对记录里面的域进行某些操作,再进行END字段。

具体的处理也可以使用if for while 循环进行,包括布尔运算、关系运算的方式,也有很多系统变量比如NF代表域的总个数,设置输出文本的方式。

还有很多内置的字符串函数等。






需要用时 man awk 查看一下选项即可 















参考 <<linux shell编程-从初学到精通>>

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值