`
Fangrn
  • 浏览: 800065 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

linux文本搜索命令

阅读更多

文本的提取和排序

下面介绍几个重要的文本提取工具。
使用grep匹配模式
本章前面简要地 介绍了grep命令,用它进行一个串中某些模式的匹配,采用正规表达式。(关于正规表达式的详细介绍,请参阅 [url]http://www.regular-expressions.info/tutorial.html[/url]处的教程。)词grep是 global regular expression print(全局正规表达式打印)的首字母缩写,它是从下面的vi命令衍生出来的,下面的命令打印与正规表达式re相匹配的所有行。
可将正规表达式 想象为用来定位文件中文本的搜索标准。因此,grep类似于别的操作系统中的搜索命令。grep搜索文件(或多个文件)的每一行,寻找给定串的第一次出 现,如果找到这个串,打印出相应的行。例如,输出文件test.txt中包含表达式oracle database的所有行,可以按如下的方式使用grep命令:
为了输出test.txt文件中不包含表达式oracle database的所有行,可使用带-v选项的grep命令,如下所示:
除-v选项外,grep命令还可以使用如下的几个选项。
q -c:打印每个输入文件匹配行计数。
q -l:打印每个输入文件的名字。
q -n:提供每个输出行的行号。
q -i:忽略表达式中字母的大小写。
除grep外,还可以使用fgrep(固定grep)搜索文件。fgrep命令不使用正规表达式。此命令直接进行串比较,查找某个固定串而不是一个正规表达式的匹配。
grep的egrep版本帮助处理复杂的正规表达式,比正规的grep命令快。
剪切、粘贴和联结文本
通常,需要剪切一个文件文本的某部分,或者联结来自不止一个文件的文本。UNIX提供了执行这些任务的命令,以下各节对它们进行介绍。
1.用cut命令输出列
cut命令输出一个文本文件的指定的列。假如有一个名为example.txt的文件,它具有如下的文本:
可用-f选项指定要提取的字段。下面的命令将返回example.txt文件中的第二列:
使用带-c选项的cut命令来指定希望从一个文件中提取的特定字符。下面的两个命令分别提取password.txt文件中的第10个字符以及第10-12个字符:
可与-f选项一 起使用-d选项提取直到一个特定定界符的所有字符。下面的例子说明,cut命令提取passwd文件的第一个字段(f1),用-d选项指出该字段是由冒号 (:)定界的。(passwd文件位于/etc目录,此目录保存UNIX和Linux系统用户账号信息。)
2.用paste命令联结文件
paste命令从一个源取一行并把它与来自另一源的另一行组合起来。假如有两个文件:test1.txt包含字符串one two three,test2.txt包含one four five six。可如下用paste命令将两个文件结合:
3.用join命令联结文件
join命令也结合两个文件的内容,但它只在两个文件有一个共同字段时进行结合。前一节中,test1.txt和test2.txt不具有共同的列,因此对这两个文件使用join命令不起作用。但如果有两个文件test.one和test.two,它们的内容如下:
默认情况下,join命令只匹配第一个字段,所以它将根据共同的(第一列)给出如下的结果:
-1选项允许指出使用哪个字段作为第一个文件中的匹配字段。-2选项允许指定使用哪个字段作为第二个文件中的匹配字段。例如,如果第一个文件的第二个字段匹配第二个文件的第三个字段,可使用如下的join命令:
可使用-o选项以后面的格式指定输出字段:file.filed。因此,要打印匹配行的第一个文件的第二个字段和第二个文件的第三个字段,可使用如下带选项的join命令:
4.用sort命令排序文本
可用sort命令对文本文件的行进行排序,不管这些行是来自于管道或来自于文件。如果使用-m选项,sort只合并文件而不排序。假如有一个名为test.txt的文件,其内容如下:
可用sort命令将test.txt文件的内容按字母顺序输出:
默认时,sort在文本的第一列上进行排序。
5.用uniq命令删除重复的行
uniq命令删除文件的重复行。在一个管道中,此命令通常后跟一个sort命令。使用-c选项,可将其用来对某行进行计数,或者使用-d选项,可用来只报告重复的行。
上面的例子中,sort命令使用-m选项合并两个文件,test.one和test.two。输出管道到带-c选项的uniq命令。所得出的是一个按字母顺序排列的表,所有重复行被删除。而且还给出每行重复的频率。
分享到:
评论

相关推荐

    Linux命令讲解视频.rar

    05文本搜索命令, 06-查找文件命令, mp4 07-压缩和解压缩命令, mp4 08文件权限命令 mp4 09获取管理权限的相关命令, mp4 10用户相关操作 mp4 11-用户组相关操作 mp4 01第二天知识点回顾 mp4 02p命令选项-a的使用 ...

    python 零基础学习篇linux命令(二)5 文本搜索命令.mp4

    python 零基础学习篇

    Linux Grep命令使用的详细介绍

    grep是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来。Unix的grep家族包 括grep、egrep和fgrep。egrep和fgrep的命令只跟grep有很小不同。egrep是grep的扩展,支持更多的re元字符, ...

    基础的Linux常用命令

    grep:文本内容搜索;find:文件或者目录名以及权限属主等匹配搜索 eg: grep success * /*查找当前目录下面所有文件里面含有success字符的文件 14. kill 可以杀死某个正在进行或者已经是dest状态的进程 eg; ps ax ...

    Linux命令大全搜索工具,内容包含Linux命令手册、详解、学习、搜集 .rar

    linux常用命令 注意:1、代表是必填项,[]表示是选填项。真正填入的时候不需要加和[];2、本文命令以cenos7为例进行测试。 〇、连接远程linux主机 使用ssh命令(linux主机需要开启ssh服务):ssh <用户名>@<主机IP>...

    linux三剑客常用命令.pdf

    inux中的文本处理工具,grep、sed、awk,也称之为三剑客,熟练的使用,对文本内容搜索、编辑等任务能够提升效率。grep/egrep/fgrep:文本过滤工具;sed:流编辑器;awk:文本报告生成器 ,格式化文本,3个开发者的名字...

    Windows cmd 管道过滤命令findstr 学习文档

    平时使用linux习惯了,管道命令是使用非常高频的,使用cmd也是想要,但是平时使用很少所以就忘记了,这里做个笔记。分享给大家。 Windows cmd 管道过滤命令findstr 学习文档 ...搜索文件中的文本模式。

    Linux基础知识与系统管理教学课件-pdf.rar

    4.3.1 Linux常用命令-文件搜索命令-文件搜索命令find 4.3.2 Linux常用命令-文件搜索命令-其他文件搜索命令 4.4 Linux常用命令-文件搜索命令-帮助命令 4.5 Linux常用命令-文件搜索命令-用户管理命令 4.6 Linux常用...

    Linux命令讲解视频.zip

    目录 第1节 操作系统介绍 01-python高级课介绍.ev4 ...05-文本搜索命令.ev4 06-查找文件命令.ev4 06-查找文件命令.ev4 07-压缩和解压缩命令.ev4 07-压缩和解压缩命令.ev4 08-文件权限命令.ev4 ..........

    cmder软件windows 命令行工具使用linux命令

    cmder软件windows 命令行工具使用linux命令,免翻墙下载。 Cmder是一个软件包,它是由于Windows上缺少优秀的控制台模拟器而产生的。它基于令人惊叹的软件,并添加了Monokai配色方案和自定义提示布局,从一开始就看...

    Linux开源操作系统常用命令大全Linux开源操作系统常用命令大全

    linux常用命令大全 Linux作为一个开源操作系统,在实际应用中得到了广泛的应用和发展。本论文将介绍一些常用的Linux命令,这些命令是Linux系统管理和操作的基础,对于理解和使用Linux系统非常重要。 一、文件和...

    linux常用命令笔记.doc

    文件与目录操作、查看文件内容、文本内容处理、查询操作、压缩、解压、yum安装器、网络相关、系统相关、XSheel 5相关操作、Tomcat、关机 (系统的关机、重启以及登出 ) 、linux 重启命令。抓包、lsof诊断工具、ps工具...

    Linux基础知识与系统管理视频.rar

    4.3.1 Linux常用命令-文件搜索命令-文件搜索命令find 4.3.2 Linux常用命令-文件搜索命令-其他文件搜索命令 4.4 Linux常用命令-文件搜索命令-帮助命令 4.5 Linux常用命令-文件搜索命令-用户管理命令 4.6 Linux常用...

    Linux命令大全搜索工具,内容包含Linux命令手册、详解、学习、搜集.zip

    linux ...Linux操作系统软件包不仅包括完整的Linux操作系统,而且还包括了文本编辑器、高级语言编译器等应用软件。它还包括带有多个窗口管理器的X-Windows图形用户界面,如同我们使用Windows NT一样。

    linux常用命令大全.doc

    以下是一些Linux的常用命令: 文件管理命令: ls:查看指定目录中有哪些内容。 cd:切换当前目录。 pwd:显示用户在哪个目录下(绝对路径)。 cp:复制文件或目录。 mv:移动或重命名文件或目录。 rm:删除文件或...

    2020Linux云计算运维工程师课程.zip

    06-年薪30万Lnux云计算课程文本处理命令与文本搜索工具grep 07年薪30万Lnux云计算课程hel脚本编程基础入门 08-年薪30万Lnux云计算课程文件打包压缩命令与文本处理命令sed 09年薪30万Lnux云计算课程inux软件包管理...

    linux常用命令集

    linux常用的命令集合 cat,显示文件内容 cd,改变目录路径 cp,复制文件 find,查找文件grep,搜索 ls,列出目录信息 more,分页显示。 rm,删除文件或目录。 vi,调用vi文本编辑器。 who,显示登录用户信息。

    一天一个shell命令 linux文本内容操作系列-grep命令详解

    Linux系统中grep命令是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹 配的行打印出来。grep全称是Global Regular Expression Print,表示全局正则表达式版本,它的使用权限是所有用户。 shell,perl,...

    linux的文本编辑器vim

    7.搜索与替换 6. 保存与退出 7. 导入命令执行结果. ‘:r ! 命令’ 导入文件。 ‘:r 文件’ 导入该文件到光标所在位置 8. 定义快捷键。 ‘:map 快捷键 触发命令’ 比如定义注释本行的快捷键 ‘:map command+/ I#’ ...

    Linux 必备指令摘要,快速找到你要的命令

    突然忘了命令名字的时候顺手查查中文意思 bash GNU Bouren-Again Shell bash shell_script cat 观看一般文本文件 cat file.txt chgrp 更改群组 chgrp groupname file chmod 更改文件权限 chmod 755 file chown 更改...

Global site tag (gtag.js) - Google Analytics