【Linux】gawk编辑器

一、基本介绍

相较于sed编辑器来说,gawk提供了一种编程语言,而不仅仅是编辑器命令。

在gawk编程语言中,可以实现以下操作:

  1. 定义变量来保存数据;
  2. 使用算术和字符串运算符来处理数据;
  3. 使用结构化编程语法(如:if-then语句和循环)为数据处理添加处理的逻辑;
  4. 提取文件中的数据将其重新排列组合,最后生成格式化报告。

gawk的报告生成能力多用于从大文本文件中提取数据并将其格式化为可读性报告,最完美的应用案例就是格式化日志文件,gawk能从日志文件中过滤出所需的数据,并将其格式化,以便于阅读。

格式:

gawk options program file

|--------------------|-------------------|
| -F fs | 指定行中划分数据字段的字段分隔符 |
| -f file | 从指定文件中读取gawk脚本代码 |
| -v var=value | 定义gawk脚本中的变量及其默认值 |
| -L [keyword] | 指定gawk的兼容模式或警告级别 |
[gawk选项]

1、从命令行中读取gawk脚本

gawk脚本用一对花括号定义,必须将脚本命令放到一对花括号({})之间。由于gawk命令行假定脚本是单个文本字符串,所以还必须将脚本放到单引号中。

bash 复制代码
gawk '{print "hello world"}'

由于没有在命令行中指定文件名,所以gawk程序会从STDIN接收数据,在上面的脚本运行时,它就会一直等待来自STDIN的文本。

用户需要输入一行文本并按Enter键,这样gawk才会对这行文本执行一遍脚本。由于此脚本设为显示一行固定的字符串,因此不管在数据流中输入什么文本,都会得到同样的输出。如下所示:

要终止这个gawk程序,就必须表明数据量已经结束。bash shell提供了Ctrl+D 组合键来生成EOF(end-of-file)字符,通过使用它便可以终止gawk程序并返回到命令行界面。

相关推荐
去看日出3 小时前
最新版RubyMine超详细图文安装教程,带补丁包(2025最新版保姆级教程)
ide·编辑器·rubymine
亦双城的双子娴4 小时前
基于ueditor编辑器的功能开发之给编辑器图片增加水印功能
编辑器
亦双城的双子娴4 小时前
基于ueditor编辑器的功能开发之增加自定义一键排版功能
编辑器
只微1 天前
Vim常用快捷键
linux·编辑器·vim
zmHelloWorld1 天前
sublime text快捷键以及常见使用技巧
编辑器·sublime text
1296004521 天前
配置VScode时的一些注意点
ide·vscode·编辑器
会飞的土拨鼠呀2 天前
vim 清除文件所有行
linux·编辑器·vim
EQ-雪梨蛋花汤2 天前
【UnityEditor扩展】如何在 Unity 中创建棱柱体(用作VR安全区检测),同时在编辑器插件中实现与撤销/恢复功能
unity·编辑器·vr
花莺尾2 天前
vscode中REST Client插件
vscode·编辑器
暮云星影2 天前
附录:LInux编辑器学习笔记
linux·学习·编辑器