【linux命令学习-001】 grep命令解析
程序员文章站
2024-02-23 23:26:28
...
1、简介
grep (global search regular expression(RE) and print out the line,全面搜索正则表达式并把行打印出来)是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来。
Unix的grep家族包括grep、egrep和fgrep。egrep和fgrep的命令只跟grep有很小不同。egrep是grep的扩展,支持更多的re元字符, fgrep就是fixed grep或fast grep,它们把所有的字母都看作单词,也就是说,正则表达式中的元字符表示回其自身的字面意义,不再特殊。linux使用GNU版本的grep。它功能更强,可以通过-G、-E、-F命令行选项来使用egrep和fgrep的功能。
2、grep命令说明
[[email protected] ~]# grep [-acinv] [--color=auto] '搜寻字符串' filename
选项与参数:
-a :将 binary 文件以 text 文件的方式搜寻数据
-c :计算找到 '搜寻字符串' 的次数
-i :忽略大小写的不同,所以大小写视为相同
-r : 递归遍历当前目前下的所有子目录及文件
-n :顺便输出行号
-v :反向选择,亦即显示出没有 '搜寻字符串' 内容的那一行!
--color=auto :可以将找到的关键词部分加上颜色的显示
--exclude-dir : 排除指定的目录
3、常用举例说明
3.1、在当前目录及字母目录下搜索指定文本并将结果输出到终端
grep -rn "text"
3.2、在当前目录及字母目录下搜索指定文本并将结果输出到指定文本,借助重定向符
grep -rn "text" > log.txt
3.3、在当前目录及子目录下搜索指定文本,但是排除特定的目录不做搜索
grep -rn "text" --exclude-dir="inlcude" > log.txt
3.4、在特定的文件中搜索指定文本
grep -rn "root" /etc/passwd > log.txt
上一篇: git bash 支持中文