如何使用sort与uniq命令删除重复的文本行

2、uniq命令 - 在Linux或Unix上运行或省略重复的行

Linux Shell - 如何使用sort与uniq命令删除重复的文本行

使用Sort,Uniq和Shell管道删除重复行

使用以下语法:

sort {file-name} | uniq -u
sort file.log | uniq -u

使用uniq删除重复的行

以下是使用cat命令显示的名为garbage.txt的示例测试文件:

linuxidc@linuxidc:~/www.linuxidc.com$ cat linuxidc.com.txt

样本输出

Linux公社()于2006年9月25日注册并开通网站
Linux现在已经成为一种广受关注和支持的一种操作系统
IDC是互联网数据中心,LinuxIDC就是关于Linux的数据中心。

实时发布最新Linux资讯

Linux公社是专业的Linux系统门户网站
实时发布最新Linux资讯,包括Linux、UbuntuFedoraRedHat
Linux教程、Linux认证、SUSE Linux、AndroidOracleHadoop等技术。

实时发布最新Linux资讯

实时发布最新Linux资讯

Linux Shell - 如何使用sort与uniq命令删除重复的文本行

从Linux上的文本文件中删除重复的行

键入以下命令以删除所有重复行:

linuxidc@linuxidc:~/www.linuxidc.com$ sort linuxidc.com.txt | uniq -u

样本输出:
 
IDC是互联网数据中心,LinuxIDC就是关于Linux的数据中心。
Linux公社()于2006年9月25日注册并开通网站
Linux公社是专业的Linux系统门户网站
Linux教程、Linux认证、SUSE Linux、Android、Oracle、Hadoop等技术。
Linux现在已经成为一种广受关注和支持的一种操作系统
实时发布最新Linux资讯,包括Linux、Ubuntu、Fedora、RedHat

Linux Shell - 如何使用sort与uniq命令删除重复的文本行

在这里,

-u:检查是否有严格的排序,删除所有重复的行。

在Linux上排序文件内容

我们假设您有一个名为users.txt的文件:

cat linuxidc.txt

Linux Idc 22/11/72
Zhang San 12/01/69
Li Ai  30/12/88
A Bao 15/08/76
Chen Xiao  05/06/77
Shen Lin 13/02/75
Da Cen 21/10/73
Zhang San 12/01/69

让我们排序,运行:

sort linuxidc.txt

接下来按姓氏排序,运行:

sort -r linuxidc.txt

想以相反的顺序排序? 尝试:

sort +2 linuxidc.txt

Linux Shell - 如何使用sort与uniq命令删除重复的文本行

您可以在排序文件时消除文件中的任何重复条目,运行:

sort +2 -u linuxidc.txt

sort -u linuxidc.txt

Linux Shell - 如何使用sort与uniq命令删除重复的文本行

没有任何选项,sort会比较文件中的整行,并以ASCII顺序输出。 您可以使用选项控制输出。

如何使用uniq命令删除Linux上的重复行

使用以下文件:

linuxidc@linuxidc:~/www.linuxidc.com$ cat -n linuxidc.txt

样本输出:


    2 Linux公社
    3 linuxidc
    4 linuxidc.com
    5 ------------
    6 5566778899
    7 5566778899
    8 5566778899

uniq命令从文件中删除第8行,并将结果放在名为linuxidc.com.txt的文件中:

uniq linuxidc.txt linuxidc.com.txt

验证它:

cat -n linuxidc.com.txt

Linux Shell - 如何使用sort与uniq命令删除重复的文本行

如何使用uniq命令删除重复的行

如何删除.txt文件中的重复行并将结果保存到新文件

请尝试以下任一语法:

sort shuru_wenjian | uniq > shuchu_wenjian
sort shuru_wenjian | uniq -u | tee shuchu_wenjian

总结

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/12318.html