awk命令之小结1
Posted guo-s
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了awk命令之小结1相关的知识,希望对你有一定的参考价值。
awk
、grep
、sed
是linux
操作文本的三大利器,也是必须掌握的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的主要内容,如果未能解决你的问题,请参考以下文章