Linux中怎么删除重复的文本行,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。
创新互联制作网站网页找三站合一网站制作公司,专注于网页设计,网站设计制作、成都做网站,网站设计,企业网站搭建,网站开发,建网站业务,680元做网站,已为数千家服务,创新互联网站建设将一如既往的为我们的客户提供最优质的网站建设、网络营销推广服务!
1、sort命令 - 在Linux和类Unix系统中对文本文件行进行排序。
2、uniq命令 - 在Linux或Unix上运行或省略重复的行
使用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公社(www.linuxidc.com)于2006年9月25日注册并开通网站 Linux现在已经成为一种广受关注和支持的一种操作系统 IDC是互联网数据中心,LinuxIDC就是关于Linux的数据中心。 实时发布***Linux资讯 Linux公社是专业的Linux系统门户网站 实时发布***Linux资讯,包括Linux、Ubuntu、Fedora、RedHat Linux教程、Linux认证、SUSE Linux、Android、Oracle、Hadoop等技术。 实时发布***Linux资讯 实时发布***Linux资讯
从Linux上的文本文件中删除重复的行
键入以下命令以删除所有重复行:
linuxidc@linuxidc:~/www.linuxidc.com$ sort linuxidc.com.txt | uniq -u
样本输出:
IDC是互联网数据中心,LinuxIDC就是关于Linux的数据中心。 Linux公社(www.linuxidc.com)于2006年9月25日注册并开通网站 Linux公社是专业的Linux系统门户网站 Linux教程、Linux认证、SUSE Linux、Android、Oracle、Hadoop等技术。 Linux现在已经成为一种广受关注和支持的一种操作系统 实时发布***Linux资讯,包括Linux、Ubuntu、Fedora、RedHat
在这里,
-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
您可以在排序文件时消除文件中的任何重复条目,运行:
sort +2 -u linuxidc.txt sort -u linuxidc.txt
没有任何选项,sort会比较文件中的整行,并以ASCII顺序输出。 您可以使用选项控制输出。
如何使用uniq命令删除Linux上的重复行
使用以下文件:
linuxidc@linuxidc:~/www.linuxidc.com$ cat -n linuxidc.txt
样本输出:
1 www.linuxidc.com 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
如何使用uniq命令删除重复的行
如何删除.txt文件中的重复行并将结果保存到新文件
请尝试以下任一语法:
sort shuru_wenjian | uniq > shuchu_wenjian sort shuru_wenjian | uniq -u | tee shuchu_wenjian
总结
sort命令用于对文本文件的行进行排序,uniq过滤从文本文件中复制相邻的行。 这些命令有许多有用的选项。 我建议您通过键入以下man命令来阅读手册页:
man sort man uniq
看完上述内容,你们掌握Linux中怎么删除重复的文本行的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注创新互联行业资讯频道,感谢各位的阅读!