linux grep?linux认证考试

老铁们,大家好,相信还有很多朋友对于linux grep和linux认证考试的相关问题不太懂,没关系,今天就由我来为大家分享分享linux grep以及linux认证考试的问题,文章篇幅可能偏长,希望可以帮助到大家,下面一起来看看吧!

linux grep命令怎么用

Linux grep命令用于查找文件里符合条件的字符串或正则表达式。

grep指令用于查找内容包含指定的范本样式的文件,如果发现某文件的内容符合所指定的范本样式,预设 grep

指令会把含有范本样式的那一列显示出来。若不指定任何文件名称,或是所给予的文件名为-,则 grep指令会从标准输入设备读取数据。

语法:

grep [options] pattern [files]

pattern-表示要查找的字符串或正则表达式。

files-表示要查找的文件名,可以同时查找多个文件,如果省略files参数,则默认从标准输入中读取数据。

常用选项:

-i:忽略大小写进行匹配

-v:反向查找,只打印不匹配的行

-n:显示匹配行的行号

-r:递归查找子目录中的文件

-l:只打印匹配的文件名

-c:只打印匹配的行数

更多参数:

-a或--text:不要忽略二进制的数据

-A<显示行数>或--after-context=<显示行数>:除了显示符合范本样式的那一列之外,并显示该行之后的内容。

-b或--byte-offset:在显示符合样式的那一行之前,标示出该行第一个字符的编号。

-B<显示行数>或--before-context=<显示行数>:除了显示符合样式的那一行之外,并显示该行之前的内容。

-c或--count:计算符合样式的列数。

-C<显示行数>或--context=<显示行数>或-<显示行数>:除了显示符合样式的那一行之外,并显示该行之前后的内容。

-d<动作>或--directories=<动作>:当指定要查找的是目录而非文件时,必须使用这项参数,否则grep指令将回报信息并停止动作。

-e<范本样式>或--regexp=<范本样式>:指定字符串做为查找文件内容的样式。

-E或--extended-regexp:将样式为延伸的正则表达式来使用。

-f<规则文件>或--file=<规则文件>:指定规则文件,其内容含有一个或多个规则样式,让grep查找符合规则条件的文件内容,格式为每行一个规则样式。

-F或--fixed-regexp:将样式视为固定字符串的列表。

参数有很多,就不一一介绍了,希望大家在学习工作的过程中慢慢认识它们。

Linux 中 Grep 命令的常见示例,很全面

Grep是一个强大的 UNIX命令,可让您在文件内容中搜索各种参数。当您进行故障排除或调试时,它特别有用。

grep命令有大量的选项和用例。您可能永远不需要或使用所有这些。但是,您最终会在大多数情况下使用少数几个 grep命令。

本文列出了最常见的 grep命令和快速示例:

命令示例:

描述:不区分大小写的搜索

命令示例:

描述:匹配后显示 n行

命令示例:

描述:在匹配前显示 n行

命令示例:

描述:在匹配前后显示 n行

命令示例:

描述:显示不匹配的行

命令示例:

描述:计算匹配行数

命令示例:

描述:仅显示文件名

命令示例:

描述:匹配确切的单词

命令示例:

描述:匹配正则表达式模式

命令示例:

描述:搜索二进制文件

命令示例:

描述:递归搜索目录

您可能已经知道要在文件中搜索特定文本或模式,您必须像这样使用 grep:

让我们看看 grep命令的几个常见用例。

默认情况下,使用 grep进行的搜索区分大小写,-i您可以使用以下选项忽略大小写匹配:

这样,grep将返回与和匹配的Holmes行holmes。

默认情况下,您只会看到匹配的行,但是,当您对某些问题进行故障排除时,在匹配行之前和/或之后查看几行会有所帮助。

您可以使用-A来显示匹配行之后的行。

下面的命令将显示匹配的行以及匹配后的 5行。

同样,您可以使用该-B选项在匹配行之前显示行。

下面的命令将在匹配行之前显示 5行以及匹配行。

我最喜欢的是该选项-C,因为它显示了匹配行之前和之后的行。

下面的命令将显示匹配行之前的 5行、匹配行和 matchine行之后的 5行。

您可以使用 grep显示与给定模式不匹配的所有行。此“反转匹配”与以下-v选项一起使用:

您可以组合-i和-v选项。

-c您可以使用选项获取与模式匹配的行数,而不是显示匹配的行。这是小写的c。

您可以结合-cand-v选项来获取与给定模式不匹配的行数。您当然可以使用不区分大小写的选项-i。

要显示匹配行的行号,您可以使用该-n选项。

您可以对反向搜索执行相同的操作。

您可以提供多个文件供 grep搜索。

这可能有效,但更实际的示例是搜索特定类型的文件。例如,如果您只想在 shell脚本中查找字符串(以.sh结尾的文件),您可以使用:

您可以使用 grep option执行递归搜索-r。它将在当前目录及其子目录中的所有文件中搜索给定的模式。

默认情况下,grep显示匹配的行。如果您对多个文件运行了搜索,并且只想查看哪些文件包含该字符串,则可以使用该-l选项。

假设您想查看哪些 Markdown文件包含“手册”一词,您可以使用:

默认情况下,grep将显示包含给定字符串的所有行。你可能并不总是想要那个。如果您正在搜索单词“done”,它还会显示包含“doner”或“abandoned”字样的行。

要使 grep仅搜索完整的单词,您可以使用以下选项-w:

这样,如果您搜索单词“done”,它只会显示包含“done”的行,而不是“doner”或“abandoned”。

您可以使用正则表达式模式为您的搜索提供超级动力。有一个允许使用正则表达式模式的专用选项-e和-E一个允许使用扩展正则表达式模式的选项。

您可以在同一个 grep搜索中搜索多个模式。如果要查看包含一种模式或另一种模式的行,可以使用 OR运算符|。

您可以将多个模式与 OR运算符一起使用。

AND运算符没有特定选项。为此,您可以多次使用 grep和管道重定向。

Grep默认忽略二进制文件。-a您可以使用该选项使其在二进制文件中搜索,就好像它是文本文件一样。

linux系统中的grep命令的"l"参数的详解

-l或--file-with-matches列出文件内容符合指定的范本样式的文件名称。

detail

grep

--------------------------------------------------------------------------------

功能说明:查找文件里符合条件的字符串。

语法:grep [-abcEFGhHilLnqrsvVwxy][-A<显示列数>][-B<显示列数>][-C<显示列数>][-d<进行动作>][-e<范本样式>][-f<范本文件>][--help][范本样式][文件或目录...]

补充说明:grep指令用于查找内容包含指定的范本样式的文件,如果发现某文件的内容符合所指定的范本样式,预设grep指令会把含有范本样式的那一列显示出来。若不指定任何文件名称,或是所给予的文件名为“-”,则grep指令会从标准输入设备读取数据。

参数:

-a或--text不要忽略二进制的数据。

-A<显示列数>或--after-context=<显示列数>除了显示符合范本样式的那一列之外,并显示该列之后的内容。

-b或--byte-offset在显示符合范本样式的那一列之前,标示出该列第一个字符的位编号。

-B<显示列数>或--before-context=<显示列数>除了显示符合范本样式的那一列之外,并显示该列之前的内容。

-c或--count计算符合范本样式的列数。

-C<显示列数>或--context=<显示列数>或-<显示列数>除了显示符合范本样式的那一列之外,并显示该列之前后的内容。

-d<进行动作>或--directories=<进行动作>当指定要查找的是目录而非文件时,必须使用这项参数,否则grep指令将回报信息并停止动作。

-e<范本样式>或--regexp=<范本样式>指定字符串做为查找文件内容的范本样式。

-E或--extended-regexp将范本样式为延伸的普通表示法来使用。

-f<范本文件>或--file=<范本文件>指定范本文件,其内容含有一个或多个范本样式,让grep查找符合范本条件的文件内容,格式为每列一个范本样式。

-F或--fixed-regexp将范本样式视为固定字符串的列表。

-G或--basic-regexp将范本样式视为普通的表示法来使用。

-h或--no-filename在显示符合范本样式的那一列之前,不标示该列所属的文件名称。

-H或--with-filename在显示符合范本样式的那一列之前,表示该列所属的文件名称。

-i或--ignore-case忽略字符大小写的差别。

-l或--file-with-matches列出文件内容符合指定的范本样式的文件名称。

-L或--files-without-match列出文件内容不符合指定的范本样式的文件名称。

-n或--line-number在显示符合范本样式的那一列之前,标示出该列的列数编号。

-q或--quiet或--silent不显示任何信息。

-r或--recursive此参数的效果和指定“-d recurse”参数相同。

-s或--no-messages不显示错误信息。

-v或--revert-match反转查找。

-V或--version显示版本信息。

-w或--word-regexp只显示全字符合的列。

-x或--line-regexp只显示全列符合的列。

-y此参数的效果和指定“-i”参数相同。

--help在线帮助。

阅读剩余
THE END