linux多个文件删除重复行,shell中删除文件中重复行的方法
Linux下文本处理工具很丰富很强大,例如这样一个文件:
cat log
www.jb51.net 192.168.1.1
www.jb51.net 192.168.1.1
www.jb51.net 192.168.1.2
ffffffffffffffffff
ffffffffffffffffff
eeeeeeeeeeeeeeeeeeee
fffffffffffffffffff
eeeeeeeeeeeeeeeeeeee
eeeeeeeeeeeeeeeeeeee
gggggggggggggggggggg
可用以下方法去除重复行:
1.使用uniq/sort删除重复行
注意:单纯uniq是不行的。
shell> sort -k2n file | uniq > a.out
这里我做了个简单的测试,当file中的重复行不再一起的时候,uniq没法删除所有的重复行。经过排序后,所有相同的行都在相邻,因此unqi可以正常删除重复行。
2.使用用sort+awk命令注意:单纯awk同样不行,原因同上。
shell> sort -k2n file | awk '{if ($0!=line) print;line=$0}'
也可以使用 awk '!i[$1]++' log;
3.用sort+sed命令,同样需要sort命令先排序。
shell> sort -k2n file | sed '$!N; /^\(.*\)\n\1$/!P; D'
linux多个文件删除重复行,shell中删除文件中重复行的方法相关推荐
- linux文件删除指定内容,Linux bash删除文件中含“指定内容”的行功能示例
本文实例讲述了Linux bash删除文件中含"指定内容"的行功能.分享给大家供大家参考,具体如下: #!/bin/sh # 功能: 删除文件中含"指定内容"的 ...
- linux删除具有指定内容的文件,Linux bash删除文件中含“指定内容”的行功能示例...
本文实例讲述了Linux bash删除文件中含"指定内容"的行功能.分享给大家供大家参考,具体如下: #!/bin/sh # 功能: 删除文件中含"指定内容"的 ...
- linux 复制指定类型,用Linux命令行实现删除和复制指定类型的文件
(一)Linux 删除当前目录及子目录中所有某种类型的文件 方法1 : 此方法不能处理目录中带空格的那些. rm -rf `find . -name "*.example"` Li ...
- linux shell rm 删除子目录下 所有.o后缀文件
原理:通过管道命令来操作,先find出主目录 下想删除的文件,然后通过"xargs"这个构造参数列表并运行命令. 实例1:删除当前目录 包括当前目录的子目录下 所有 后缀是 o ...
- 用Linux命令行实现删除和复制指定类型的文件
(一)Linux 删除当前目录及子目录中所有某种类型的文件 方法1 : 此方法不能处理目录中带空格的那些. rm -rf `find . -name "*.example"` Li ...
- linux过滤重复字符串,linux – 从制表符分隔文件中删除重复的单词/字符串
我想使用Linux命令从大的制表符分隔文件中删除重复的单词/字符串. names john, cnn, mac, tommy, mac, patrick, ngc, discovery, john, ...
- linux 删除网卡配置文件,linux-如何通过命令行/ shell脚本从etc / wpa_supplicant / wpa_supplicant.conf中删除网络配置文件...
我在etc / wpa_supplicant / wpa_supplicant.conf中保存了多个wifi网络ssid,如下所示, 我们可以从此wpa_supplicant.conf中删除特定的网络 ...
- linux遍历目录删除指定文件,利用shell脚本遍历文件夹内所有的文件并作整理统计的方法-linux删除文件夹...
本篇文章扣丁学堂Linux培训小编给读者们分享一下利用shell脚本遍历文件夹内所有的文件并作整理统计的方法,文章具有很好的参考价值,感兴趣的小伙伴就随小编来了解一下吧. 环境: Ubuntu下采用s ...
- linux shell之删除当前文件夹不包含文件1和文件2的其他所有文件
1 问题 删除当前文件夹不包含文件1和文件2的其他所有文件,这个当前文件夹里面可以包含子文件夹,然后子文件夹里面也有文件1和文件2,但是这里的文件1和文件2也不应该被删除. 2 解决办法 可以用如下s ...
- Linux在文件第一行添加字符,使用shell命令给文件中每一行的前面、后面、指定列添加字符...
shell给一个文件中的每一行开头插入字符的方法:awk '{print "X"$0}' fileName shell给一个文件中的每一行结尾插入字符的方法:awk '{print ...
最新文章
- php model类,PHP培训之PHP Model类
- 环信ease-sdk-3.3.4_r1 集成用户头像 昵称功能的简单处理方法
- 可穿插PC端浏览器任何位置的爱心分割
- 技术差的程序员,90%都输在这点上!骨灰级开发:其实都是在瞎努力!
- usb大容量存储设备驱动程序_20年历史了!为什么USB接口还存在?网友:原来如此...
- Python操作读写txt文件
- git解决error: failed to push some refs to ‘xxx(远程库)‘
- # 20155224 第十一周 课堂练习《计算后缀表达式的值》
- oracle linux下数据迁移到不同服务器
- 协议 UDP、TCP UDP的接发数据的步骤
- 图文并茂带你了解成分句法分析
- 迪赛智慧数——柱状图(正负条形图):应届生各行业平均薪酬排行
- 怎么用计算机测出来体脂,如何测自己的体脂率?
- Spark架构原理和生态系统
- HDU 3831 DICS 递推dp
- 在服务器上利用mmdetection来训练自己的voc数据集
- android给按钮边框加颜色代码,Android Studio按钮颜色和边框
- OCR调研(留着以后备用)
- Fun. 201x年刑侦科推理试题网图题的暴力求解
- win10设置代理无法保存的情况
热门文章
- -----------------------------------SQL2005的安装问题汇总 --------------------------
- 梦幻西游只知道服务器怎么找回,买回八年前的梦幻号,只为找回当年的美好
- 强力推荐mac快速查看应用快捷键工具:键指如飞FlyKey
- 利用线程池来处理Excel导出功能
- 注入——sql注入命令
- JavaScript网页特效-“渔夫打鱼晒网”程序设计
- 转 javascip学习笔记
- 漫反射辐照——并不是很完全的翻译
- 超详细markdown语法和typora教程
- 看我如何偷取别人的云储币(Siacoin)