好用的linux数据分析命令awk、grep 您所在的位置:网站首页 awk去重复值 好用的linux数据分析命令awk、grep

好用的linux数据分析命令awk、grep

2023-09-29 08:46| 来源: 网络整理| 查看: 265

针对文件中的内容,取出指定的列(第八列、最后一列,以空格?分割)进行去重,并输出对应的行数 cat 2023-03-02.log | grep max_fc | awk ‘{print $8, $NF}’ | grep 游戏 | awk ‘!a[$0]++’ | wc -l

cat 2023-03-02.log | grep max_fc | awk ‘{print $8, $NF}’ | awk ‘!a[$0]++’ | wc -l

参考: 1、cat file | awk ‘{print $3, $NF}’ #打印第三列和最后一列

awk -F “:” ‘{print $1, $3}’ #以“:”为分隔符分割列,然后打印第一列和第三列 $0表示所有列 -F:指定分隔符 ( N F ) 表示最后一列, (NF)表示最后一列, (NF)表示最后一列,(NF-1)表示倒数第二列,以此类推。 https://www.cnblogs.com/liuyihua1992/p/9689308.html https://www.cnblogs.com/liuyihua1992/p/9689308.html

2、awk ‘!a[$0]++’ file 是个神奇的用法,通过它可以实现文件内容去重

$0: 代表整行 a[]: 代表数组a,名称随意,首次调用时为空 ++: 与C/C++中的++一个含义,i++先使用i后i自增1,++i代表i先自增1然后被使用 !: 代表取反 所以a[$0]代表对当前行构建一个名为a的数组,首次构建后其值为0

a[$0]++代表先使用a[$0]的值,然后a[$0]的值自增1。首次调用自然就是0,下次遇到重复的行就变为1,所以不加!的情况下,该语法用于打印重复项,看下面的例子↓ https://www.litreily.top/2020/01/09/awk_dedup/ https://www.litreily.top/2020/01/09/awk_dedup/

3、未看 Linux命令去重统计排序(awk命令去重,sort, uniq命令去重统计)https://blog.csdn.net/feng973/article/details/73849586



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有