linux文本数字运算符,awk的常用标量变量和数值运算符

awk是Unix系统中的重要的支持正则表达式模式的处理文本处理工具,它即不像sed是基于一行行的处理文本数据,也不像grep一样只是匹配某一个字符串所在的行的数据,它处理文本数据是可以抓取到相应的字段的,要实现如此复杂的功能awk就有大量的内建函数、命令、变量、数组等等。awk还支持自定义变量,awk的内建变量一般用大写,而我们自定义的变量中一般全局变量第一个字母大写,局部变量全部小写,这个是我们一般的使用习惯。当然在Unix系统中awk还有衍生出其他相应的免费版本,如果你的系统是遵从FHS标准的话,默认的有如下:

[root@localhost bin]# ls /bin/|egrep '\.*awk$|^awk\.*'

awk

gawk

igawk

pgawk

其他版本的awk在这里就不做过多的赘述了,先说一下awk的常用内建标量变量:

变量说明

FILENAME

当前输入文件的名字

FNR

当前文件的记录数(record,即rows行)

FS

字段分隔字符(默认为空格)

NF

当前记录的字段数(field的总和,即$0里的所有字段数)

NR

当前处理的字段的记录数(如果是处理所有数据等效于FNR)

OFS

输出字段分隔字符(默认为空格)

ORS

输出记录分隔字符(默认为“\n”,即换行)

RS

输入记录分隔字符

SUBSEP

数组下标分隔字符

数值运算符(优先级从大到小):

运算符说明

++ --

增加与减少(前置或后置)

^ **

指数

! + -

非、加(一元条件表达式中)、减(一元条件表达式中)

* / %

乘、除、余

+ -

加、减

< <= == => != >

比较

&&

逻辑与(and)

||

逻辑或(or)

? :

三元条件式

= += -= *= /= %= ^= **=

赋值

当然还有正则运算符,当然在平时我们可能还会使用的到awk的内建函数来处理数据,另外awk下还有BEGING、END、PATTERN这3种语句块,在这里就不做过多的说明了,需要可以查看man帮助文档,总之awk是在Unix系统中相当重要的文本处理工具,如果熟悉掌握它可以让你在平时处理数据时事半功倍。

0b1331709591d260c1c78e86d0c51c18.png

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值