首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Linux 删除文本中的重复

在进行文本处理的时候,我们经常遇到要删除重复的情况。那怎么解决呢? 下面就是三种常见方法? 第一,用sort+uniq,注意,单纯uniq是不行的。...shell> sort -k2n file | uniq 这里我做了个简单的测试,当file中的重复不再一起的时候,uniq将服务删除所有的重复。...经过排序后,所有相同的行都在相邻,因此unqi可以正常删除重复。 第二,用sort+awk命令,注意,单纯awk同样不行,原因同上。...P; D' 最后附一个必须先用sort排序的文本的例子,当然,这个需要用sort排序的原因是很简单,就是后面算法设计的时候的“局部性”,相同的可能分散出现在不同的区域,一旦有新的相同行出现,那么前面的已经出现的记录就被覆盖了...参考推荐: 删除文本中的重复(sort+uniq/awk/sed)

8.6K20
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Linux 打印文本部分行内容(前几行,指定,中间几行,跨行,奇偶,后几行,最后一,匹配

    背景 打印对账文件最后一汇总信息,通过钉钉定时发送到运维群。顺便总结下 Linux 打印文本部分行内容的各种方法。...测试文本 # 生成测试文本内容 $ seq -f "%02g daodaotest" 1 10 > test.txt # 查看测试文本内容,并显示行号 $ cat -n test.txt 1...## 读取 2 记录,进行模式匹配:i=!1(因为上次 i 的值由 0 变成了 1),条件为假不打印。 ## 读取 3 记录,因为上次条件为假,i 恢复初值为 0,继续打印。...i' test.txt ## m~np:m 表示起始行;~2 表示:步长 $ sed -n '1~2p' test.txt ## 先打印 1 ,执行 n 命令读取当前行的下一,放到模式空间,后面再没有打印模式空间操作...,所以只保存不打印,同等方式继续打印 3

    13.3K32

    跟萌老师学Linux的第三天

    grep:一种强大的文本搜索工具,它能使用正则表达式匹配模式搜索文本,并把匹配的打印出来 -w:word 精确查找某个关键词 pattern -c:统计匹配成功的的数量 -v:反向选择,即输出没有没有匹配的...常见 'script' address : 2 ∶ 2 2,4 ∶ 2 4 2,$ ∶ 2 到最后一,$ 表示最后 2~3 ∶从 2 开始,每隔 3 2、5、8 2...,+4 ∶从 2 到 2+4 /pattern/ :匹配上 pattern 的 [!]...$0 代表整个文本行; $1 代表文本行中的1个数据字段; …… $NF 代表文本行中的最后一个数据字段 awk 默认的字段分隔符是任意空白字符(如:空格 or 制表符),也可以用 -F 参数自定义分隔符...) int(x) x的整数部分,靠近零一侧的值 log(x) x的自然对数 Linux常见符号及其含义 图片

    1.1K10

    Linux进阶-Day3

    Vim 编辑器Vim: Linux自带的文本编辑器Vim 编辑器:三种模式1.1 命令模式:• 用vim FILENAME进入之后的默认模式• 可以“上下左右”移动光标• 剪切、复制与粘贴:x:剪切一个字符...10x:连续剪切10个字符(numberx)dd:剪切所在行10dd:剪切所在行及向下共10yy:复制光标所在行10yy:复制所在行及下面10p或P:在当前行的下面/上面进行粘贴1.2 编辑模式:•...不保存修改,强制退出注意Windows系统文件格式与Linux系统不一样,将Windows的文件上传后需要转换格式,才能使用Linux命令操作文本处理三架马车-grep sed awkgrep 强大的文本搜索工具...$0 代表整个文本行;$1 代表文本行中的1个数据字段;$NF 代表文本行中的最后一个数据字段awk 默认的字段分隔符是任意空白字符(如:空格 or 制表符),也可以用 -F 参数自定义分隔符awk...)int(x) x的整数部分,靠近零一侧的值log(x) x的自然对数

    9510

    Linux 三剑客之awk

    目录 Linux 三剑客之awk 简介 应用场景 awk执行流程图 awk生命周期 awk内置(预定义)变量 与列描述 列 awk中的函数 条件的分类 awk正则详细: 普通正则和awk正则区别...范围表达式 逻辑表达式 算术表达式 特殊模式BEGIN{}和END{} awk数组 awk 的 判断、循环 if循环 循环 总体练习 易错点: Linux 三剑客之awk 简介 awk主要是用来格式化文本...,直至处理完成 # 生命周期如下: 接收一作为输入 把刚刚读入进来得到文本进行分解 使用处理规则处理文本 输入一,赋值给$0,直至处理完成($0代表当前行的内容) 把处理完成之后的所有的数据交给...record 每一结尾默认通过回车分隔 列 记录字段/域field 列与列默认以空格分隔,可以指定分隔符 awk字符 描述 NR==1 取出1 NR>=1&&NR<=5 取出1到5...:x:3:4:adm:/var/adm:adm /sbin/nologin:x:4:7:lp:/var/spool/lpd:lp 案例4:列实现了文本内容“指哪打哪”,列 # 精确

    65910

    Linux文本处理三剑客

    awk、sed、grep是linux操作文本的三大利器,合称文本三剑客,也是必须掌握的linux命令之一。...三者的功能都是处理文本,但侧重点各不相同,grep更适合单纯的查找或匹配文本,sed更适合编辑匹配到的文本,awk更适合格式化文本,对文本进行较复杂格式处理。...,主要用于文本内容的编辑,默认只处理模式空间,不改变原数据 sed基本用法 1、-n 参数 1.1 显示单行 sed -n '4p' test.txt 显示文件的4。...4、替换匹配的关键字 sed '2s/a/A/g' test.txt 将文件的2的所有 a 字符全部替换为A字符。...6、-i.bak参数 sed -i.bak '4d' test.txt 删除源文件的4,并且备份一份未被修改的源文件‘.bak’。

    4.8K50

    Linux文本处理详细教程

    文本处理 本节将介绍Linux下使用Shell处理文本时最常用的工具: find、grep、xargs、sort、uniq、tr、cut、paste、wc、sed、awk; 提供的例子和参数都是常用的;...x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.9, not stripped $...cut 的范围 N- N个字段到结尾-M 1个字段为MN-M N到M个字段 cut 的单位 -b 以字节为单位-c 以字符为单位-f 以字段为单位(使用定界符) 示例:.../' #包含linux文本(可以用正则表达式来指定,超级强大) awk '!.../linux/' #不包含linux文本 设置定界符 使用-F来设置定界符(默认为空格): awk -F: '{print $NF}' /etc/passwd 读取命令输出 使用getline,将外部

    4.3K20

    生信入门必须掌握的 30 个 Linux 命令

    ln -s /ifs1/Example ./ #为 /ifs1/Example 目录在当前目录下创建一个快捷方式 9. vim vim 是 Linux 系统自带的文本编辑器,可以理解成为 windows...$ less -S nt.tar.gz 13. head / tail 这两个命令比较简单,只是一个文件的头部和尾部多少,默认 10 ,可以加-n进行设置,利用管道可以文件中间。...#文件 21~40 $ head -40 a.txt | tail -n 14. g(un)zip/ b(un)zip2 gzip和bzip2是文件压缩工具,默认直接对源文件进行处理,压缩比率在...列大于10列的。...因为当文件越来越多的时候,由于 Linux文本界面,不方便可视化文件,这个时候就可以利用find快速找到需要的文件。find支持多种搜索方式。

    2.6K40

    Linux学习----文本三剑客——sed(马哥教育原创)

    Linux文本文件中文本存储都是一,显示时表现的多行其实都是因为有换行符的存在,例如:文本是:abc$def$ghi 显示出来就是三了。...Sed就是一个编辑器,它一次读一文本进行操作,然后根据我们的选择看是否同步到文本之中。...还有一个叫awk的,在Linux上叫做gawk(gnu awk),它是一个文本格式化工具,我们下一篇文章再说。...在Linux文本文件中文本存储都是一,显示时表现的多行其实都是因为有换行符的存在,例如:文本是:abc$def$ghi 显示出来就是三了。...还有一个叫awk的,在Linux上叫做gawk(gnu awk),它是一个文本格式化工具,我们下一篇文章再说。

    1.4K30

    Linux系列 常用命令(目录和文件管理)vi和vim 编辑使用,(笔记)

    前言 本章将会分享Linux系列 常用命令(目录和文件管理)vi和vim 编辑使用。...  tail  more  查看大文件内容  只能用空格键翻屏  只能向下翻屏  less  查看大文件内容   用方向键 可以上下翻屏  cat  适合查看小文件内容 只显示一屏内容  head  指定文件中的前几行...文本编辑器, vim 是 vi 的升级版本  vim 编辑器的三大模式: 命令行模式     编辑模式      末行模式 命令行模式: vim 打开文件进入的第一个模式 可以实现         .../password 8、vi的使用(以/etc/passwd为例)      1,  显示行号 2,跳转到 40    (3)删除第一    (4)一次性删除3    (5)一次性复制...(6)从上往下查看所有bin的字符    (7)将整篇文档的所有bin替换为333    (8)将35的333替换为444    (9)保存并退出。

    22520
    领券