grep命令

grep 命令是 Linux 使用频率非常高的一个命令,不管是在日常终端操作中,还…

grep 命令是 Linux 使用频率非常高的一个命令,不管是在日常终端操作中,还是在编程中都会用到,下面结合实例进行介绍。

一、基本语法

grep [options] PATTERN [FILE…]

常用参数:

-i : 忽略大小写(在许多命令中 -i 都是这个含义);

-v ,–invert-match : 反向显示,显示不包含匹配文本的所有行;

-o, –only-matching :只显示匹配的行中与 PATTERN 相匹配的部分;

-n, –line-number:在输出的每行前面加上它所在的文件中它的行号;

–color :将匹配的内容以高亮显示,一般 grep 中默认已经加上了该参数;

-A NUM, –after-context=NUM:打印出紧随匹配的行之后的下文 NUM 行;

-B NUM, –before-context=NUM:打印出匹配的行之前的上文 NUM 行;

-C NUM, –context=NUM:打印出匹配的行的上下文前后各 NUM 行;

二、实例

在当前目录下,查找包含字符串 “hosts” 的文件,如下所示:

在查找结果中,先是列出了所在的文件,然后输出字符串 “hosts” 所在的行。默认情况下匹配的内容都高亮显示,比如:这里的“hosts”。

查看下系统中命令的别名,如下所示:

其中,命令 grep 等于 grep –color=auto,已默认添加了 –color 参数。

在当前目录下,递归查找包含字符串“hosts” 的文件,即:查找当前目录以及当前目录下的所有目录,递归查找。如下所示:

查找当前目录下,包含字符串“hosts”的文件,且字符串中的字符不区分大小写,如下所示:

在上面的查找结果中,HOSTS、Hosts、hosts 都被查找出来了。

查找当前目录下,包含字符串“hosts”的文件,且仅显示与“hosts”一样的内容。如下所示:

其中,显示的匹配内容仅显示了与 “hosts” 相同的内容。

查找当前目录下,包含字符串“hosts”的文件,并显示匹配内容的行号,如下所示:

在匹配内容前加了行号。

-A : 打印出紧随匹配的行之后的下文 1 行,如下所示:

其中,“–” 表示相邻的匹配组之间会打印 — 的一行,如果两个匹配组在实际文件中位置紧连着,将不会有 “–” 分隔。

-B:打印出匹配的行之前的上文 2 行,如下所示:

-C:打印出匹配的行的上下文前后各 2 行,如下所示:

三、总结

grep 是 Linux 终端操作中经常使用的一个命令,通常用于查找哪些文件包含指定的内容。

参考文献:

[1] Linux grep 手册;

本文来自网络,不代表软粉网立场,转载请注明出处:https://www.rfff.net/p/4528.html

作者: HUI

发表评论

您的电子邮箱地址不会被公开。

返回顶部