awk命令之小结1

Posted guo-s

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了awk命令之小结1相关的知识,希望对你有一定的参考价值。

awkgrepsedlinux操作文本的三大利器,也是必须掌握的linux命令之一。三者的功能都是处理文本,但侧重点各不相同,其中属awk功能最强大,但也最复杂。grep更适合单纯的查找或匹配文本,sed更适合编辑匹配到的文本,awk更适合格式化文本,对文本进行较复杂格式处理。

以下所有实验输出,均以测试文件test.log内容为基准:

20170102 admin,password Open
20170801 nmask,nmask close
20180902 nm4k,test filter

AWK是一种处理文本文件的语言,是一个强大的文本分析工具; awk是以列为划分计数的,$0表示所有列,$1表示第一列,$2表示第二列。

awk参数

  • -F 指定输入文件折分隔符,如-F:
  • -v 赋值一个用户定义变量,如-va=1
  • -f 从脚本文件中读取awk命令

注:只列举最常用的参数

分隔符

每行按空格分割列,并输出第1、3列

$ awk ‘{print $1,$3}‘ test.log
# 或者
$ cat test.log | awk ‘{print $1,$3}

自定义分隔符

使用”,”进行分割,参数用-F

awk -F, ‘{print $1,$2}‘ test.log

使用多个分隔符,先使用空格分割,然后对分割结果再使用”,”分割

$ awk -F ‘[ ,]‘{print $1,$2,$3}‘  test.log  #注意逗号前面有一个空格

以上是关于awk命令之小结1的主要内容,如果未能解决你的问题,请参考以下文章

sed-awk命令详解

shell命令三剑客之awk命令详解,cut命令,linux里记录行踪(操作记录)

Linux命令之awk_1

linux之awk命令

linux12shell编程 --> 三剑客之awk命令

不看绝对后悔的Linux三剑客之awk实战精讲