grep
是一个非常强大的文本搜索工具,它使用正则表达式来搜索文本,并打印匹配的行。以下是 grep
的一些常用用法:
基本搜索
-
搜索字符串
-
在文件
file.txt
中搜索字符串 "pattern":
grep "pattern" file.txt
-
不区分大小写的搜索
-
使用
-i
选项进行不区分大小写的搜索:
grep -i "pattern" file.txt
-
计数匹配的行数
-
使用
-c
选项计算匹配的行数:
grep -c "pattern" file.txt
-
显示非匹配行
-
使用
-v
选项打印那些不包含匹配文本的行:
grep -v "pattern" file.txt
-
匹配多个文件
-
搜索多个文件并找到匹配的字符串:
grep "pattern" file1.txt file2.txt file3.txt
-
递归搜索
-
使用
-r
或-R
选项在所有文件中递归搜索(包括子目录中的文件):
grep -r "pattern" /path/to/directory
输出控制
-
只显示匹配的部分
-
使用
-o
选项只显示匹配的文本部分,而不是整行:
grep -o "pattern" file.txt
-
显示行号
-
使用
-n
选项在输出中包含行号:
grep -n "pattern" file.txt
-
显示匹配行的前后行
-
使用
-B
,-A
, 和-C
选项可以分别显示匹配行之前、之后和前后的行数:
grep -B 2 "pattern" file.txt 显示匹配行及其前2行
grep -A 2 "pattern" file.txt 显示匹配行及其后2行
grep -C 2 "pattern" file.txt 显示匹配行及其前后各2行