linux中uniq命令的使用

uniq命令用于报告或者忽略文件中的重复的行,一般与sort命令结合使用。
语法

uniqu(选项)(参数)

选项

-c / --count:在每列旁边显示该行重复出现的次数;
-d / --repeated: 仅显示重复出现的行;
-f<栏位> / --skip-fields=<栏位>:忽略比较指定的栏位;
-s<字符位置> / --skip-chars=<字符位置>:忽略比较指定的字符;
-u / --unique:仅显示出现一次的行列;
-w<字符位置> / --check-chars=<字符位置>:指定要比较的字符。

参数
输入文件:指定要去除重复复行的文件。如果不指定此项,则从标准读取数据;
输出文件:指定要去除重重复行后的内容要写入的输出文件。如果不指定,则将内容显示到标准输出设备(终端)。
实例
file.txt文件:

aaa
bbb
aaa
aaa
ccc
ccc
bbb
dddd
dddd
dddd
aaa
aaa

执行命令:

去除临近的相同项:uniq file.txt

结果:

aaa
bbb
aaa
ccc
bbb
dddd
aaa

执行:

sort file.txt | uniq
aaa
bbb
ccc
dddd
sort -u file.txt 
aaa
bbb
ccc
dddd

达到去重的效果。
统计各行在文件中出现的次数:

sort file.txt | uniq -c
      5 aaa
      2 bbb
      2 ccc
      3 dddd

查找文件中的重复行:

sort file.txt | uniq -d
aaa
bbb
ccc
dddd

猜你喜欢

转载自blog.csdn.net/bigdata_mining/article/details/80875339