`

grep 目录级联查找

 
阅读更多

       在Mac或者Linux下使用grep进行文件内容查找时,如果给定的目标搜索路径是当前目录,那么它默认只搜索当前目录下的文件,而不会搜索其下面子目录中的文件内容,如果想级联搜索下级目录,需要使用一个“-r”参数:

grep -n -r "GET" .

 

上面的命令将会找出当前目录“.”及当前目录中所有下级目录中的文件中包含“GET”关键字的文件,并打印出行号和文件名

 

其中:

-n : 代表输出时打印行号

-r : 代表进行目录递归搜索,即搜索下级所有子目录

 

另外还介绍几个常用的选项:

-I : 大写的“i”,用来忽略所有的二进制文件

-i : 用来进行忽略大小写的匹配,也就是对大小写不敏感

-A : 这个选项可以打印出匹配行之后几行的内容,比如:grep -A 3 "get" test.txt

-B : 这个选项可以打印出匹配行之前几行的内容,比如:   grep -B 3 "get" test.txt

-C : 这个选项可以打印出匹配行之前和之后几行的内容(注意: -C之后的参数要紧挨着中间不留空格),比如:grep -C2 "get" test.txt

 

下面举一个综合的例子:

文件为test.txt,内容如下:

get 1
GET 2
GET 3
GET 4
get 4
post 1
post 2
post 3
post 4
post 5

 

运行命令并查看输出:

运行命令:grep -A 2 -B 2 -i -n "get" test.txt                    
输出结果如下:
1:get 1
2:GET 2
3:GET 3
4:GET 4
5:get 4
6-post 1
7-post 2

运行命令:grep -C2 -i -n "get" test.txt
输出结果如下:
1:get 1
2:GET 2
3:GET 3
4:GET 4
5:get 4
6-post 1
7-post 2

 

 

可以发现两次运行命令的输出结果一致,证明了“-A 2 -B 2”选项等同于"-C2"的事实,同时还发现一个情况,即使每行都有匹配到get,那么-A 2 和 -B 2输出的结果会进行合并,而不是重复输出。

 

 

 

1
2
分享到:
评论

相关推荐

    grep不查找隐藏文件夹的方法.docx

    本文将介绍如何在使用`grep`时不查找隐藏文件夹,特别是`.svn`目录。 首先,`grep`提供了一个`--exclude-dir`参数,可以用来排除特定目录。例如,如果你想在当前目录及其所有子目录中搜索包含"MediaButton"的行,...

    [linux下的find文件查找命令与grep文件内容查找命令]linuxfindgrep.docx

    **find** 命令是Linux系统中用于在指定目录树下查找文件的强大工具。它可以基于多种条件(如文件名、文件大小、所有者、组、是否为空、访问时间、修改时间等)来搜索文件。 ##### 1. 基本格式 ```bash find path ...

    自定义grep命令(递归查找)

    这个代码是自定义的Linux下的grep命令实现文件内容的查找,并罗列行数。Linux系统中grep命令是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹 配的行打印出来。grep全称是Global Regular Expression ...

    Linux中利用grep命令如何检索文件内容详解

    - 命令格式:`grep -r "被查找的字符串" 文件目录` 8. **列出包含匹配内容的文件名** - 结合使用`-H`和`-r`参数来列出包含匹配内容的文件名。 - 命令格式:`grep -H -r "被查找的字符串" 文件目录 | cut -d: -f1...

    linux中grep命令的使用.docx

    grep 命令也可以用于查找目录下的文件,例如,使用 grep -r ^# . 命令可以查找目录/cpl 下所有以#开头的文件。使用 grep -r ^} . 命令可以查找目录/cpl 下所有以}结尾的文件。 grep 命令是一种强大的文本搜索工具,...

    Windows下的grep

    grep 多文件查找指定字符串 来自C:\Program Files\Borland\CBuilder6\Bin\

    Linux下如何使用grep命令查找带有tab(退格)的字符

    在使用grep查找包含制表符的行时,我们可能需要统计匹配到的行数。这时可以使用wc命令,它用于统计行数、单词数和字符数。例如,要统计上面命令找到的行数,可以结合使用grep和wc命令,如下: ```bash grep $'\t11\...

    grep查询命令使用方法介绍

    `grep`(来自`g/re/p`,意为“全局搜索正则表达式并打印匹配行”)是一个用于查找文件中与设定的模式匹配的行,并把匹配的行显示出来的工具。它支持基本正则表达式的匹配,同时提供了多种选项来增强其功能。`grep`...

    使用 grep 命令搜索多个字符串.doc

    grep 命令搜索多个字符串 grep 命令是 Linux 系统中一个强大的命令行工具,它允许在一个或多个文件中搜索与正则表达式匹配的行,并将匹配的结果写入标准输出。grep 命令支持三种正则表达式语法:Basic、Extended 和...

    Linux- 系统随你玩之-grep查找文件内容-fyydlz.zip

    例如,查找目录下所有.txt文件中包含特定字符串的行: ```bash find . -name "*.txt" -exec grep "关键词" {} \; ``` 这里,`.` 表示当前目录,`-name "*.txt"` 搜索.txt文件,`-exec` 执行`grep`命令,`{}` 代表...

    grep-find命令详解

    - `-depth`:在查找文件时,首先查找当前目录中的文件,然后查找子目录。 - `-mount`:查找文件时不跨越文件系统mount点。 - `-follow`:如果find命令遇到符号链接文件,就跟踪至链接指向的文件。 - `-exec`:对匹配...

    win10可用,windows下的grep命令行 用法同linux

    这个压缩包提供了一个适用于Windows的`grep`命令行工具,使得在Windows环境下可以使用与Linux相同的命令语法进行文本查找。 `grep`(全球定位记录)是Linux系统中的一个强大工具,它允许用户在文件或输出流中搜索...

    linux grep命令详解

    - 示例:`grep -d recurse "panda" /path/to/directory`,在 `/path/to/directory` 目录下递归搜索含有 "panda" 的文件。 - **-E, --extended-regexp** 使用扩展正则表达式(ERE)进行模式匹配。 - 示例:`grep...

    grep-2.5.4-setup windows操作系统最新版

    grep是Linux系统中一个强大的文本搜索工具,它能根据用户提供的模式匹配文本文件中的行,大大提升了在大量数据中查找特定信息的效率。在Linux环境中,grep是日常操作中的得力助手,尤其对于系统管理员和程序员来说更...

    grep.rar 解压缩将grep.exe放在C:\Windows即可

    在Windows操作系统中,通常我们使用的命令行工具是cmd或PowerShell,而“grep”是Unix/Linux环境中常用的文本搜索工具,它能快速在文件中查找指定的字符串或模式。由于Windows系统原生不支持grep命令,因此需要通过...

    grep find 命令用法.doc

    find 命令的格式为:find [path][options][expression],其中 path 指定目录路径,system 从这里开始沿着目录树向下查找文件。 find 命令的主要参数包括: * -depth:使用深度级别的查找过程方式,在某层指定目录...

    linux grep命令详解_linux_grep_

    通过学习并熟练运用`grep`命令,不仅可以提高在大量文本数据中查找特定信息的效率,还能为日后的Linux系统管理与数据分析打下坚实的基础。在实际工作中,结合其他命令如`find`、`sed`和`awk`,能实现更复杂的文本...

    windows 下的grep,转贴

    在描述中提到,“在windows下的grep命令,查找文本的好工具,方便shell人员”,这暗示了grep对于经常在命令行环境中工作的人来说是一个非常实用的工具,可以帮助他们快速定位和分析大量文本数据。 在Windows环境下...

    linux grep 程序源码

    4. **反向搜索**:`grep -r`或`grep --recursive`可以递归地在目录结构中搜索,这需要处理目录遍历和文件过滤。 5. **行号和偏移量**:`grep`的`-n`选项打印匹配行的行号,`-b`选项打印匹配行的字节偏移量,这需要...

    grep20d_win.rar

    8. **递归搜索**:`-r`或`--recursive`选项允许grep在目录及其子目录中递归搜索。 9. **颜色高亮**:`--color=auto`选项可以在匹配的文本上自动添加颜色,使得结果更易于识别。 在“grep20d_win”这个压缩包中,...

Global site tag (gtag.js) - Google Analytics