`
webcenterol
  • 浏览: 914789 次
文章分类
社区版块
存档分类
最新评论

Linux删除重复行

阅读更多

文本处理时,经常要删除重复行,下面是三种方法

第一,用sort+uniq,注意,单纯uniq是不行的。
sort -n test.txt | uniq


第二,用sort+awk命令,注意,单纯awk同样不行,原因同上。

sort -n $file | awk '{if($0!=line)print; line=$0}'
 

第三,用sort+sed命令,同样需要sort命令先排序。

sort -n $file | sed '$!N; /^\(.*\)\n\1$/!P; D'

Shell脚本

测试文件:

yanggang@barry$ cat test.txt
aaa
bbbbb
ccccc
123
aaaaa
123
bbb
aaa

执行结果:

yanggang@barry$ ./diffRow.sh
aaa
aaaaa
bbb
bbbbb
ccccc
123



推荐参考:

删除文本中的重复行sort+uniq/awk/sed

SED单行脚本快速参考Unix 流编辑器

分享到:
评论

相关推荐

    重复文件删除工具Linux64位

    重复文件删除工具Duplicate-File-Eraser Linux64位

    重复文件删除工具Linux32位

    重复文件删除工具Linux32位 Duplicate-File-Eraser

    linuxshell删除重复文件只保留一份.docx

    linuxshell删除重复文件只保留一份.docx

    shell中删除文件中重复行的方法

    Linux下文本处理工具很丰富很强大,例如这样一个文件: 代码如下:cat log ...1.使用uniq/sort删除重复行注意:单纯uniq是不行的。 代码如下

    如何在Linux上找出并删除重复的文件:FSlint

    大家好,我们会学习如何在Linux PC或者服务器上找出和删除重复文件。这里有一款工具你可以工具自己的需要使用。  无论你是否正在使用Linux桌面或者服务器,有一些很好的工具能够帮你扫描系统中的重复文件并删除...

    彻底删除重删池(linux)

    彻底删除重删池(linux)的方法。比较详细的资料。

    删除重复的记录,并保存第一条记录或保存最后一条记录

    删除重复的记录,并保存第一条记录或保存最后一条记录

    linux删除环境变量步骤详解

    linux如何删除环境变量,使用unset命令就可以立刻删除 1、打开linux客户端,如下图所示 2、点击连接linux按钮 3、输入用户名,主机ip地址 4、输入密码 5、连接成功,可以进行操作 6、输入unset my_var命令,...

    LINUX处理文本命令

    LINUX处理文本命令 处理文本和文本文件的命令 一. sort 文件排序, 通常用在管道中当过滤器来...这个过滤器将会删除一个已排序文件中的重复行. 这个命令经常出现在sort命令的管道后边. 四. expand, unexpand ... ...

    RHEL 8 VDO重复数据删除和压缩存储.doc

    虚拟数据优化器(VDO)以重复数据删除,压缩和精简配置的形式为Linux提供了内联数据缩减。设置VDO卷时,可以指定要在其上构造VDO卷的块设备以及计划提供的逻辑存储量。 • 当托管活动的虚拟机或容器时,红帽建议以10...

    Linux下字典去重复等文本编辑命令

    个人常用的字典处理和文本编辑...主要是grep、sort、cat等命令的使用实例,功能如从文本中提取md5哈希值、提取邮箱、提取HTTP URLs,字典去重复、删除所有空格、根据词长排序、去掉空白行、大小写转换等,共60余条命令

    vim安装包,用于linux十分便捷

    dd 删除一行 c 和d功能一样,只不过删除完会进入插入模式 yy 选定光标所在行复制 p 粘贴yy复制的行,贴在光标所在位置之右 P 粘贴yy复制的行,贴在光标所在位置之左 cw 删除光标所在的单词并且进入插入状态 R ...

    linux系统vim实验报告.doc

    关于文本编辑器 vim 的使用 【注】里面的内容和自己跟着敲敲,文件名字换成自己的,可以套用我的模板和前言结论,代码最好...3.字符串替换,行的复制,移动,删除。 4.文本的查找,撤销与重复。 【注】原创文章,请勿转载

    linux用户创建

     -u 用户号 指定用户的用户号,如果同时有-o选项,则可以重复使用其他用户的标识号。  用户名 指定新账号的登录名。  例如:  # useradd –d /usr/sam -m sam  此命令创建了一个用户sam,其中-d和-m选项...

    linux vi 常用命令

    #X 删除光标前面的#个字符 dd 删除光标所在的行 #dd 删除从光标所在行数的#行 yw 复制光标所在位置的一个字 #yw 复制光标所在位置的#个字 yy 复制光标所在位置的一行 #yy 复制从光标所在行数的#行 p 粘贴 u 取消操作...

    重复文件清理工具(含源代码C#)

    你知道Linux的文件硬链接吗?就是给文件一个别名,多个文件名指向同一个文件内容,不重复占用空间。与快捷方式不同的是,删除快捷方式的原始文件,快捷方式就会失效。你删除硬链接其中任何一个,都不影响原始文件,...

    linux 面试题 (附答案)

    1.关闭linux系统(不重新启动)可使用命令 B 。 A Ctrl+Alt+Del B halt C shutdown -r now D reboot 2.实现从IP地址到以太网MAC地址转换的命令为: C 。 A ping B ifconfig C arp D traceroute 3.在vi编辑器中的...

    RED HAT LINUX 6大全

    6.5.3 误删除文档 101 6.5.4 文件工具箱 101 6.5.5 当系统不能引导时,Red Hat会 来救援 102 6.5.6 获取更多的信息 103 6.6 小结 104 第7章 SMTP和协议 105 7.1 Internet电子邮件标准的历史简述 105 7.1.1 sendmail...

    borg-macosx64 borgbackup: 1.1.11 重复数据删除备份程序

    BorgBackup(简称:Borg)是一个重复数据删除备份程序。 (可选)它支持压缩和经过身份验证的加密。 Borg的主要目标是提供一种有效且安全的备份数据方式。由于仅存储更改,因此使用的重复数据删除技术使Borg适合日常...

Global site tag (gtag.js) - Google Analytics