【Linux】Linux常用命令——uniq命令

Linux命令:uniq

1.介绍

uniq命名用于比较相邻的行并去掉重复的行,对不相邻的行无效;如果使用该命令不加任何命令行参数,则视为删除文本文件中重复的行之后进行输出;如果指定输出文件,则删除到指定文件当中;

2.参数

  • -c:去掉相邻重复的行,并在每列旁边重复该行出现的次数
  • -u:仅显示出现一次的行
  • -d:只显示重复的行
  • [输入文件]:指定已经排好序的文本文件,如果不指定此项,则从标准读取数据
  • [输出文件]:指定输出的文件,如果不指定此选项,则将内容显示到标准输出设备(显示终端)

3.命令测试文件内容

使用cat查看文件当中的内容

 

4.去除文件当中重复出现的行输出到标准输出设备

uniq:去重的命令

test2.txt:带去重的文件名

 

注意:在去重的时候,文件内容没有改变,只是在输出的时候进行了过滤

5.删除文件当中重复的行并输出到指定文件当中

uniq [filename1] [filename2] :uniq命令加上待去重的文件,加上输出文件,这样就可以将重复的行去掉并且输出到输出文件当中去;

这里,开始将输出文件设为空文件

 

  • ll:查看到文件内容的大小,test3.txt文件为空
  • uniq:去重命令
  • test2.txt:待去重的文件
  • test3.txt:输出文件名称
  • cat test3.txt:查看test3.txt文件当中的内容,可以看到已经将test2.txt当中重复的行去掉,将结果保存在test3.txt中

6. 在每列旁边显示该行重复的次数

uniq -c [filename]:uniq 命令加上-c命令行参数,加上待去重的文件,这样就可以在每列旁边显示该行重复出现的次数

 

-c:uniq的命令行参数,在每列旁边显示改行重复出现的次数;

(注意:uniq命名用于比较相邻的行并去掉重复的行,对不相邻的行无效)

7.显示出现一次的行

uniq -u [filename]:uniq命令加上-u 命令行参数,加上待去重文件,这样就可以展示文件当中只出现一次地行

 

-u:uniq的命令行参数,显示文件当中只出现一次的行

8.只显示重复的行

uniq -d [filename]:uniq命令加上-d 命令行参数,加上待去重文件,这样就可以展示文件当中只重复出现的行(只出现一次)

-d:uniq的命令行参数,显示文件当中重复的行