Linux-grep命令

grep命令 文本搜索工具

grep -[acivn] '搜索字符串' filename

-a 将二进制文件以文本的方式进行搜索

-c 计算需要搜索的字符串出现的次数

-n 显示行号

-i 忽略大小写

-v 反向选择,也就是显示出没有 '搜索字符串' 内容的那一行

grep ‘搜索字符串’ *            #递归当前目录

grep -r ‘搜索字符串’ *        #递归当前目录及其子目录,输出包含搜索字符串的那些行

grep -l -r ‘搜索字符串’ *     #递归当前目录及其子目录,输出包含搜索字符串的那些行,但是不显示匹配的行,只显示匹配的文件

grep -n ‘[^a-z]’ filename.txt                         #找出不含有小写字母的行

grep -n ‘^[a-z]’ filename.txt                         #找出行首为小写字母的行

grep -n '\.$' filename.txt                             #找出以小数点结尾的行

grep -n 'o\{2\}' filename.txt                        #限定范围的字符 {} 。 但因为 { 与 } 的符号在 shell 是有特殊意义的,因此, 我们必须要使用字符   \ 来让他失去特殊意义才行

grep 扩展

grep -E / egrep

egrep 'a|b' filename.txt          #文件中包含a或者b的行

grep 'a\|b'  filename.txt          #在扩展元字符前面加\,grep会自动启用扩展选项-E

grep -F                                 # fgrep 查询速度比grep命令快,但是不够灵活:它只能找固定的文本,而不是规则表达式。

posted @ 2019-01-11 15:52  lufengkenan  阅读(152)  评论(0编辑  收藏  举报