Linux 系统 grep 命令超详细讲解
grep
是一种在 Linux 或 Unix 系统中用于文本搜索的强大工具。它的名字来自 "Global Regular Expressions Print"(全局正则表达式打印),它的作用是对文本文件进行搜索,并打印出匹配特定模式的行。
基本语法:
grep [options] pattern [file...]
常用选项:
-i
:不区分大小写。-v
:显示不包含匹配文本的所有行。-n
:显示匹配行及其行号。-c
:只输出匹配的行数。-l
:只列出包含匹配文本的文件名。-R
或--recursive
:递归地搜索每个指定目录下的文件。-A num
:显示匹配行以及之后的 num 行。-B num
:显示匹配行以及之前的 num 行。-C num
:显示匹配行以及之前后的 num 行。--color
:高亮显示匹配的文本。
使用实例:
- 在文件中搜索特定模式:
grep "error" log.txt
- 在多个文件中搜索:
grep "error" log1.txt log2.txt
- 不区分大小写地搜索:
grep -i "error" log.txt
- 只列出匹配的文件名:
grep -l "error" log1.txt log2.txt
- 显示匹配行及其行号:
grep -n "error" log.txt
- 显示匹配行前后各两行:
grep -C 2 "error" log.txt
- 统计匹配行数:
grep -c "error" log.txt
- 递归搜索目录中所有文件:
grep -R "error" /path/to/directory/
- 高亮显示匹配文本:
grep --color "error" log.txt
- 显示不包含特定模式的所有行:
grep -v "error" log.txt
grep
是一种强大的文本搜索工具,可以通过各种选项和正则表达式进行复杂的搜索。
评论已关闭