Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >面试题-Linux-awk命令用法

面试题-Linux-awk命令用法

作者头像
别明天就今天吧
发布于 2020-09-22 03:19:04
发布于 2020-09-22 03:19:04
1.9K0
举报

在最近的工作中,处理了一些日志,用到了awk命令,我们平时用的比较多的例如cat、grep、sed、less等等,对于awk每次都是现用现查,今天我们来说几种awk的用法。

awk命令工作原理:

  • 与sed一样, 均是一行一行的读取、处理
  • sed作用于一整行的处理, 而awk将一行分成数个字段来处理

awk命令常用写法:

准备工作:首先创建一个log文件,touch awk.log,写入以下内容

  1. awk '{print $1}' awk.log,可以看出默认是按照空格分割,输出第一列。
  1. awk '{print 1,2}' awk.log ,按空格分割,并且输出1,2两列
  2. awk -F ',' '{print 1,2}' awk.log ,指定","为 分隔符,并且输出1,2两列。
  3. awk '{print NR,1,2}' awk.log,默认空格分割,输出行号,输出前两列
  4. awk -F ',' '{if(1>11)print(
  5. awk '{for(c=2;c<4;c++) print $c}' awk.log ,从第二列开始,依次循环输出到第四列。
  1. cat awk.log | awk '{print $1}' |sort -n |uniq -c,按空格分割,第一列正序排列。
  1. cat awk.log |awk 'BEGIN{size=0} {if($1==11) size++ } END{print size}',查找符合条件的数量。
  1. cat awk.log |awk '{print $1}' >> 11.log,筛选出第一列,输出到11.log。
  1. netstat -an|awk '/^tcp/ {++S[$NF]} END {for(a in S) print a,S[a]}',统计出tcp连接不同状态的数量。
  1. cat awk.log |awk -F 'bb' '{print 2}' |awk -F 'dd' '{print 1}'|awk -F ',' '{print
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-09-13,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 别明天就今天吧 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
linux中的awk命令详解
关于awk脚本,我们需要注意两个关键词BEGIN和END。 BEGIN{ 这里面放的是执行前的语句 } END {这里面放的是处理完所有的行后要执行的语句 } {这里面放的是处理每一行时要执行的语句} 假设有这么一个文件(学生成绩表):
全栈程序员站长
2022/09/08
1.6K0
linux中的awk命令详解
Linux awk命令详细教程
AI摘要:本文详细介绍了Linux下的文本处理工具awk的使用方法,包括其语法、选项参数、内置变量、常用操作(如打印、条件判断、循环等)以及一些实用的示例。awk通过将文本按行读取并以指定的分隔符分割成多个字段,使得对文本的处理变得灵活高效。文章还提供了如何打印指定列、过滤日志、按条件统计、指定多个分隔符、日志切割、匹配指定列和统计文件大小等实际应用示例,以及一个统计nginx日志数据的awk脚本示例。通过这些内容,读者可以全面掌握awk命令的强大功能,有效地应用于日志分析、数据处理等场景。
曈曈too
2024/03/16
4700
linux awk命令详解
简介 awk是一个强大的文本分析工具,相对于grep的查找,sed的编辑,awk在其对数据分析并生成报告时,显得尤为强大。简单来说awk就是把文件逐行的读入,以空格为默认分隔符将每行切片,切开的部分再进行各种分析处理。 awk有3个不同版本: awk、nawk和gawk,未作特别说明,一般指gawk,gawk 是 AWK 的 GNU 版本。 awk其名称得自于它的创始人 Alfred Aho 、Peter Weinberger 和 Brian Kernighan 姓氏的首个字母。实际上 AWK 的确拥有自己
千往
2018/01/24
3K0
一天一个 Linux 命令(21):awk 命令
本文为joshua317原创文章,转载请注明:转载自joshua317博客 https://www.joshua317.com/article/151
joshua317
2021/10/09
2.1K0
linux实战(6)linux核心数据处理查找命令之find,cut,awk, sed命令用法
cut应用场景:通常对数据进行列的提取 (在工作中,我们通常会对数据库或者查出来的日志进行列的提取)
大数据小禅
2021/08/16
1.3K0
linux实战(6)linux核心数据处理查找命令之find,cut,awk, sed命令用法
【精通Linux系列】inux核心数据处理查找命令之find,cut,awk, sed命令用法
cut应用场景:通常对数据进行列的提取 (在工作中,我们通常会对数据库或者查出来的日志进行列的提取)
大数据小禅
2022/04/13
1.4K0
【精通Linux系列】inux核心数据处理查找命令之find,cut,awk, sed命令用法
Linux awk 命令
AWK是一种处理文本文件的语言,是一个强大的文本分析工具。之所以叫AWK是因为其取了三位创始人Alfred Aho,Peter Weinberger, 和 Brian Kernighan 的 Family Name 的首字符。
狼啸风云
2019/11/03
4.4K0
Linux命令(36)——awk命令
AWK是一个优良的文本处理工具,Linux及Unix环境中现有的功能最强大的数据处理引擎之一。数据可以来自标准输入(stdin)、一个或多个文件,或其它命令的输出。它支持用户自定义函数和动态正则表达式等先进功能,是linux/unix下的一个强大编程工具。它在命令行中使用,但更多是作为脚本来使用。awk有很多内建的功能,比如数组、函数等,这是它和C语言的相同之处,灵活性是awk最大的优势。简单来说awk就是把文件逐行的读入,以空格为默认分隔符将每行切片,切开的部分再进行各种分析处理。
恋喵大鲤鱼
2018/08/03
2.4K0
Linux生产环境上,最常用的一套“AWK“技巧
awk的命名得自于它的三个创始人姓别的首字母,都是80来岁的老爷爷了。当然也有四个人的组合:流行的GoF设计模式。但对于我这游戏爱好者来说,想到的竟然是三位一体,果然是不争气啊。
xjjdog
2019/07/10
9030
Linux生产环境上,最常用的一套“AWK“技巧
Linux之awk命令详解(一)
awk是一个报告生成器,拥有强大的文本格式化能力。它的命名方式也是由三位大佬,分别叫Aho,Weinberger,Kernighan,的三个人,awk命令取得他们的名字首字母。
AsiaYe
2019/11/06
11.6K0
生信人的自我修养:Linux 命令速查手册
精心整理了生物信息学中常用的 Linux 命令,很不容易。所有命令的用法都经本人亲自测试。掌握这些命令,是每一个生信人基本的自我修养。
简说基因
2020/12/14
7.5K0
Linux常用命令面试题(1)
tail -n 2000 表示的是显示文件最后2000行,差别很大,注意灵活使用。
小萌哥
2020/07/20
1.5K0
Linux之awk命令详解(二)
上一篇文章我们简单举了几个例子了解了一下awk命令的基本语法,这里,再次贴出来这个命令的基本语法,如下:
AsiaYe
2019/11/06
2.7K1
linux运维中的命令梳理(三)
----------文本操作命令---------- sed命令:文本编辑工具 sed是一个很好的文件处理工具,本身是一个管道命令,主要是以行为单位进行处理,可以将数据行进行替换、删除、新增、选取等特定工作,下面先了解一下sed的用法 sed命令行格式为: sed [-nefri] ‘command’ 输入文本 常用选项: -n∶使用安静(silent)模式。在一般 sed 的用法中,所有来自 STDIN的资料一般都会被列出到萤幕上。但如果加上 -n 参数
洗尽了浮华
2018/01/23
8.2K0
简明AWK实战教程
AWK是一个强大的格式化文本处理工具,一般在类Unix操作系统中都是必带的工具(Linux、Mac OS),因此,使用无需安装,非常的方便与便捷。
流川枫
2018/09/12
1.8K0
简明AWK实战教程
Linux的文本处理工具浅谈-awk sed grep
日志样子举例如下: http://youku.com 200 http://youku.com 302 http://youku.com 403 http://youku.com 502 http://baidu.com 302 http://baidu.com 404 现想使用awk命令按域名统计 返回码大于等于400的百分比,假如优酷总共有4行,大于等于400的返回码有两行,那占比就为50%
sunsky
2020/08/20
3.6K0
Linux下find、awk、sed、grep命令的例子
Global Regular Expression Print(全局正则表达式打印)
wuweixiang
2019/04/09
1.9K0
五分钟入门文本处理三剑客grep awk sed
grep awk sed是Linux下文本处理常用的命令,能完成很多神奇的操作,今天就分享一下这三个命令最常见的用法
Java识堂
2020/05/27
7030
linux 的一些脑洞操作
把当前文件夹的文件名用","连接成一行,或者将多行转变为一行 ls | paste -s -d "," # -s 选项将输入进行一次性粘贴 ls | xargs | sed 's/ /,/g' #xargs 将输入作为参数(空格分隔)传入 ls | awk '{printf "%s,",$0}' 将行逆序输出 sed '1!G;h;$!d'file # 1!G 第一行不执行G命令,从第二行开始执行;$!d 最后一行不删除;第一行自动存入模式空间,将模式空间内容(第一行)放到保持空间(h),然后删除模式
用户1680321
2018/04/27
1.3K0
linux 的一些脑洞操作
Shell常用命令使用说明
chattr 命令用于改变文件属性 这项指令可改变存放在ext2文件系统上的文件或目录属性,这些属性共有以下8种模式:
mikelLam
2022/10/31
4.8K0
相关推荐
linux中的awk命令详解
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档