awk ‘! a[$0]++’ 去重】的更多相关文章

awk '! a[$0]++' 怎么理解? 这是一个非常经典的去重复项的awk语句,虽然短小,不过涉及到了不少知识点,下面一一解读: <1> :"!" 即非. <2>:a[$0],以$0为数据下标,建立数组a <3>:a[$0]++,即给数组a赋值,a[$0]+=1 <4> :那么组合起来,awk是怎么执行!a[$0]++的呢?我用一个实际例子来解释: cat file 111 222 111 222 333 awk '{print a[…
1.uniq:只会对相邻的行进行判断是否重复,不能全文本进行搜索是否重复,所以往往跟sort结合使用. 例子1: [root@aaa01 ~]# cat a.txt 12 34 56 12 [root@aaa01 ~]# cat a.txt|uniq >>au.txt [root@aaa01 ~]# cat au.txt 12 34 56 12 例子2: [root@aaa01 ~]# cat b.txt 10 46 32 10 [root@aaa01 ~]# cat b.txt|sort |…
[root@localhost cc]# cat 2.txt adc 3 5 a d aa 3 adfa d ba 3 adf 去重第一列重复的行: [root@localhost cc]# cat 2.txt |awk '!a[$1]++{print}'adc 3 5 a d a 重复的行取最上面一行记录 去重以第一列和第二列重复的行: [root@localhost cc]# cat 2.txt |awk '!a[$1" "$2]++{print}'adc 3 5 a d aa 3…
.uniq:只会对相邻的行进行判断是否重复,不能全文本进行搜索是否重复,所以往往跟sort结合使用. 例子1: [root@aaa01 ~]# cat a.txt 12 34 56 12 [root@aaa01 ~]# cat a.txt|uniq >>au.txt [root@aaa01 ~]# cat au.txt 12 34 56 12 例子2: [root@aaa01 ~]# cat b.txt 10 46 32 10 [root@aaa01 ~]# cat b.txt|sort |u…
回到: Linux系列文章 Shell系列文章 Awk系列文章 修改字段或NF值的联动效应 注意下面的分割和计算两词:分割表示使用FS(field Separator),计算表示使用预定义变量OFS(Output Field Separator). 修改$0,将使用FS重新分割字段,所以会影响$1.$2... 修改$1.$2,将根据$1到$NF等各字段来重新计算$0 即使是$1 = $1这样的原值不变的修改,也一样会重新计算$0 为不存在的字段赋值,将新增字段并按需使用空字符串填充中间的字段,并…
2.删除行末空格 代码如下: 删除所有空白列 cat yum.log | awk '{$1=$2=$3=$4=null;print $0}'>>yum.log1 sed 's/[ \t]*$//g' 删除所有空格 sed -i s/[[:space:]]//g yum.log Shell去除空格和空行的方法 dan08201人评论79783人阅读2017-07-05 18:35:15   一.去除空行的方法 有时我们在处理和查看文件时,经常会有很多空行,为了美观或是有需要时,就有必要把这些除行…
awk awk是个很好用的东西,大量使用在linux系统分析的结果展示处理上.并且可以使用管道, input | awk ''  | output 1.首先要知道形式 awk 'command' file 如 awk '{print $0}' a.txt b.txt   (后面可以跟一个或多个文件)   2.command学习.command是awk的精髓,其结构为 '条件 {动作} 条件2 {动作2} ……'   2.1关键字学习: 变量名 含义 ARGC 命令行变元个数 ARGV 命令行变元…
grep grep (global search regular expression(RE) and print out the line,全面搜索正则表达式并把行打印出来)是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来.常用来在结果中搜索特定的内容. 一般格式: grep [选项] 基本正则表达式 [文件] 选项 -c 只输出匹配行的计数 -i 不区分大小写(单字符) -h 不显示文件名(多文件时) -l 只输出文件名(多文件时) -n 显示匹配行及行号 -s 不…
知识点: 1)数组 数组是用来存储一系列值的变量,可通过索引来访问数组的值. Awk中数组称为关联数组,因为它的下标(索引)可以是数字也可以是字符串. 下标通常称为键,数组元素的键和值存储在Awk程序内部的一个表中,该表采用散列算法,因此数组元素是随机排序. 数组格式:array[index]=value 1.Nginx日志分析 日志格式:'$remote_addr - $remote_user [$time_local] "$request" $status $body_bytes_…
目录 取ifconfig bond0的IP地址    1 命令如下:    2 统计apache日志单IP访问请求数排名    2 第一种方法    2 第二种方法    2 统计域名访问量    3 第一种方法:    3 第二种方法:    3 计算每个人的总工资和平均工资    4 命令如下:    4 对本地IP和远程IP去重并统计重复数    4 命令如下:    5 统计源IP,端口及目的IP同时去重    6 命令如下:    6 美化效果如下:    7 取ifconfig bo…