linux 中如何去除重复行

 

1、sort -u实现

root@PC1:/home/test# ls
a.txt
root@PC1:/home/test# cat a.txt
a b c
x y z
a b c
m n o
m n o
root@PC1:/home/test# sort -u a.txt          ## sort -u删除重复行
a b c
m n o
x y z

 

2、 sort + awk实现

root@PC1:/home/test# ls
a.txt
root@PC1:/home/test# cat a.txt
a b c
x y z
a b c
m n o
m n o
root@PC1:/home/test# sort a.txt | awk '{if( a != $0) {print $0} a = $0}'
a b c
m n o
x y z

 

3、利用awk数组实现

root@PC1:/home/test# ls
a.txt
root@PC1:/home/test# cat a.txt
a b c
x y z
a b c
m n o
m n o
root@PC1:/home/test# awk '!array[$0]++' a.txt     ## 利用awk数组删除重复行
a b c
x y z
m n o

 

posted @ 2022-05-09 19:23  小鲨鱼2018  阅读(334)  评论(0编辑  收藏  举报