码迷,mamicode.com
首页 > 其他好文 > 详细

awk命令之小结1

时间:2020-03-21 23:14:09      阅读:81      评论:0      收藏:0      [点我收藏+]

标签:复杂   匹配   输入   格式化   source   python   linu   文件   定义变量   

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

标签:复杂   匹配   输入   格式化   source   python   linu   文件   定义变量   

原文地址:https://www.cnblogs.com/guo-s/p/12543051.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!