欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  运维

linux下的awk是什么意思

程序员文章站 2022-04-05 10:01:06
...

linux下的awk是行处理器,通常用来格式化文本信息。awk在处理庞大文件时不会出现内存溢出的问题。awk命令格式:【awk [-F|-f|-v] ‘BEGIN{} //{command1; command2} END{}' file】。

linux下的awk是什么意思

awk介绍

(推荐教程:linux教程

awk是行处理器,相比较屏幕处理的优点,在处理庞大文件时不会出现内存溢出或是处理缓慢的问题,通常用来格式化文本信息。

awk处理过程:依次对每一行进行处理,然后输出。

awk命令形式:

awk [-F|-f|-v] ‘BEGIN{} //{command1; command2} END{}’ file

参数介绍:

  • -F 指定分隔符

  • -f 调用脚本

  • -v 定义变量

  • ' ' 引用代码块

  • BEGIN 初始化代码块,在对每一行进行处理之前,初始化代码,主要是引用全局变量,设置FS分隔符

  • // 匹配代码块,可以是字符串或正则表达式

  • {} 命令代码块,包含一条或多条命令

  • END 结尾代码块,在对每一行进行处理之后再执行的代码块,主要是进行最终计算或输出结尾摘要信息

我们来看一下几个应用:

awk -F: '{print NF}' /etc/passwd    //输出文件每行有多少字段
awk -F: '{print $1,$2,$3,$4,$5}' /etc/passwd    //输出前5个字段
awk -F: '{print $1,$2,$3,$4,$5}' OFS='\t' /etc/passwd    //输出前5个字段并使用制表符分隔输出
awk -F: '{print NR,$1,$2,$3,$4,$5}' OFS='\t' /etc/passwd    //制表符分隔输出前5个字段,并打印行号

以上就是linux下的awk是什么意思的详细内容,更多请关注其它相关文章!

相关标签: linux awk