【Linux】对文件重复行进行操作


##第五个字段以186开头,打印出整行 cat * | awk -F'|' '{if ($5 ~/^186/) {print $0}}'| sort | uniq   ##根据某列去重 [root@localhost cc]# cat 2.txt adc 3 5 a d a a 3 adf a d b a 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 a a 3 adf 去除重复的行: [root@localhost cc]# cat 2.txt |awk '!a[$0]++{print}' adc 3 5 a d a a 3 adf a d b 只显示重复行: [root@localhost cc]# cat 2.txt |awk 'a[$0]++{print}' a 3 adf