[转帖]awk(一) 基本操作符

awk,基本,操作符 · 浏览次数 : 0

小编点评

**数据格式说明:** * 整个行第一个字段:NF * 每行第一个字段数量:NR * 每行的记录号:FNR * 文件记录递增:NR * 文件记录格式:NR,每行记录号从1开始 * 每个文件都从1开始 * RECORDS分隔符:FS * 记录分隔符:RS * 记录分隔符默认值:换行符 * 记录分隔符可以设置为制表符或换行符

正文

https://www.jianshu.com/p/e3fa91a8d9f2

 

$0             表示整个当前行

$1             每行第一个字段

NF            字段数量变量

NR            每行的记录号,多文件记录递增

FNR          与NR类似,不过多文件记录不递增,每个文件都从1开始

\t                制表符

\n               换行符

FS             BEGIN时定义分隔符

RS             输入的记录分隔符, 默认为换行符(即文本是按一行一行输入)

~                匹配,与==相比不是精确比较

!~               不匹配,不精确比较

==              等于,必须全部相等,精确比较

!=               不等于,精确比较

&&           逻辑与

||                逻辑或

+                匹配时表示1个或1个以上

/[0-9][0-9]+/      两个或两个以上数字

/[0-9][0-9]*/       一个或一个以上数字

OFS            输出字段分隔符, 默认是空格,可以改为制表符等

ORS           输出的记录分隔符,默认是换行符,即一行一行输出到屏幕

-F  '[:#/]'      定义三个分隔符,[ ]内可以放置多个分隔符

与[转帖]awk(一) 基本操作符相似的内容:

[转帖]awk(一) 基本操作符

https://www.jianshu.com/p/e3fa91a8d9f2 $0 表示整个当前行 $1 每行第一个字段 NF 字段数量变量 NR 每行的记录号,多文件记录递增 FNR 与NR类似,不过多文件记录不递增,每个文件都从1开始 \t 制表符 \n 换行符 FS BEGIN时定义分隔符 R

[转帖]1. awk基础,awk介绍,awk基本语法,直接使用action,打印列,初识列和行,\$0、\$NF、NF,基础示例,begin模式,end模式

文章目录 前言awk介绍awk基本语法直接使用action打印列初识列和行\$0、\$NF、NF基础示例初识模式(begin end) 总结友情链接 前言 本小节是awk基础入门课程,掌握awk从这一小节开始。 awk介绍 awk其实是一门编程语言,它支持条件判断、数组、循环等功能。所以可以把awk

[转帖]awk高级企业级使用案例

https://www.jianshu.com/p/e36176ad3c06 一、背景: 以某物联网企业,传感器设备实时数据消费服务(Kafka-consumer)为例,调试筛选处理耗时的主题。 1. 原始日志格式(logback输出的): 2018-07-11 11:49:22.413 INFO

[转帖]SHELL—— awk两个特殊模式(BEGIN 和 END)及awk高级应用(条件判断、循环)

一、Awk 的两个特殊模式 BEGIN 和 END,BEGIN 被放置在没有读取任何数据之前,而 END 被放置在所有的数据读取完成以后执行体现如下: BEGIN{}: 读入第一行文本之前执行的语句,一般用来初始化操作 {}: 逐行处理 END{}: 处理完最后以行文本后执行,一般用来处理输出结果

[转帖]【Linux学习】awk内置函数详细介绍(实例)

https://www.cnblogs.com/gtea/p/12668736.html 这节详细介绍awk内置函数,主要分以下3种类似:算数函数、字符串函数、其它一般函数、时间函数 一、算术函数: 以下算术函数执行与 C 语言中名称相同的子例程相同的操作: 函数名 说明 atan2( y, x )

[转帖]shell 把以空格分隔的变量 分割后的每个字段赋值给变量

比如我有一个变量 “123 456 789”,要求以空格为分隔符把这个变量分隔,并把分隔后的字段分别赋值给变量,即a=123;b=456;c=789 共有3中方法: 法一:先定义一个数组,然后把分隔出来的字段赋值给数组中的每一个元素 法二:通过eval+赋值的方式 法三:通过多次awk把每个字段赋值

[转帖]awk提取某一行某一列的数据

https://www.jianshu.com/p/dbcb7fe2da56 1、提取文件中第1列数据 awk '{print $1}' filename > out.txt 2、提取前2列的文件 awk `{print $1,$2}' filename > out.txt 3、打印完第一列,然后打

[转帖]awk 中 FS的用法

https://www.cnblogs.com/rohens-hbg/p/5510890.html 在openwrt文件 ar71xx.sh中 查询设备类型时,有这么一句, machine=$(awk 'BEGIN{FS="[ \t]+:[ \t]"} /machine/ {print $2}' /

[转帖]awk 文本处理

https://juejin.cn/post/6844903860629143559 awk 文本处理 awk 是一种样式扫描和处理语言,使用 Linux 的 awk 命令可以高效快捷地进行文本处理。awk 扫描文本的每一行并执行指定的命令。 awk 诞生于 1977 年,借鉴了 C 语言等编程语言

[转帖]awk——getline

http://t.zoukankan.com/panscience-p-4685698.html A.getline从整体上来说,应这么理解它的用法: 当其左右无重定向符 | 或 < 时,getline作用于当前文件,读入当前文件的第一行给其后跟的变量var 或$0(无变量);应该注意到,由于awk