Linux 中的 GREP 是什么以及如何使用它?

Grep 是一个用于查找匹配模式的小型 Unix 程序。 作为一个 Unix 程序开始,它可以在 Linux 以及 Mac 和 BSD 上找到。 它可以读取几乎任何文本,这意味着它可以读取来自其他命令的输入,或者它可以直接打开和查看文件。 Grep 非常有用,尤其是在从命令行查看目录时。

有了这个,为什么不尝试 Grep 最常见的用途之一,即在目录中查找文件。 查看“~/Downloads”文件夹中的任何“jpg”图像。

Grep 会将它们全部列出并突出显示“.jpg”部分,因为它是您搜索的内容。

本文中的 grep grep

您将几乎任何命令的输出(使用命令“|”)通过管道传输到 grep. 如果你有一个纯文本文件, cat 它输出并将结果通过管道传输到 Grep 以查找特定单词。

Grep 将打印出文件中包含您告诉它要查找的单词的所有行。

忘记案例

哟 dawg 我听说你喜欢 grep

类 Unix 系统区分大小写,这意味着“Ubuntu”与“ubuntu”完全不同。 搜索某些东西时可能会很痛苦。 Grep 有一个标志来消除这个问题。 添加 -i 标记您的搜索,Grep 将忽略大小写。

在文件中搜索

grep 在文件中

它不会那么方便需要 cat 每次您想搜索文件时。 事实上,你没有。 Grep 可以搜索文件本身。 将文件的路径传递给它,Grep 将完成剩下的工作。

递归搜索

递归 Grep

Grep 可以同时搜索多个文件或目录。 请注意,如果您正在查找文件名,Grep 也会默认搜索文件。 这 -r flag 告诉 Grep 递归搜索。

您也可以将其与其他标志配对。 您可能希望包括 -I 进行递归搜索时标记,以防止 Grep 查看二进制文件。

找到对面

您还可以告诉 Grep 查找不包含指定模式的所有内容。 这在您需要查找错误或者您的目录中包含一种或两种类型的文件的情况下会很好。

文字和线条

告诉 Grep 搜索完整的单词或行,而不是包含特定模式的任何内容也可能很有用。 想象一下,您正在寻找作为单词一部分的常见字符串,但您需要将其分开。 为了 example,“它”这个词。 显然,你不会有多少次真正想要寻找像“它”这样的模式,但它证明了这一点。

Grep 不会打印出包含该模式的每个单词,而是仅打印该单词本身。 它对整个行做同样的事情 -x 标志,因此,如果您要在配置文件中查找短语或单行,那真的很有帮助。

如果您有兴趣研究 Grep 可以做的所有事情,请运行 man grep 在终端中查看完整文档。 本文介绍了这个强大工具通常需要的基础知识和所有内容。 如果您知道 Grep 命令的任何强大用途,请与我们分享。

图片来源: Shell脚本兴趣点坐标

订阅我们的新闻!

我们的最新教程直接发送到您的收件箱

注册所有时事通讯。 注册即表示您同意我们的隐私政策并且欧洲用户同意数据传输政策。 我们不会共享您的数据,您可以随时取消订阅。 订阅