Linux grep命令用于查找文件里符合条件的字符串。
grep指令用于查找内容包含指定的范本样式的文件,如果发现某文件的内容符合所指定的范本样式,预设grep指令会把含有范本样式的那一列显示出来。若不指定任何文件名称,或是所给予的文件名为-,则grep指令会从标准输入设备读取数据。
语法
grep
[-abcEFGhHilLnqrsvVwxy][-A<显示行数>][-B<显示列数>][-C<显示列数>][-d<进行动作>][-e<范本样式>][-f<范本文件>][--help][范本样式][文件或目录...]
参数
-a或--text:不要忽略二进制的数据。
-A<显示行数>或--after-context=<显示行数>:除了显示符合范本样式的那一列之外,并显示该行之后的内容。
-b或--byte-offset:在显示符合样式的那一行之前,标示出该行第一个字符的编号。
-B<显示行数>或--before-context=<显示行数>:除了显示符合样式的那一行之外,并显示该行之前的内容。
-c或--count:计算符合样式的列数。
-C<显示行数>或--context=<显示行数>或-<显示行数>:除了显示符合样式的那一行之外,并显示该行之前后的内容。
-d<动作>或--directories=<动作>:当指定要查找的是目录而非文件时,必须使用这项参数,否则grep指令将回报信息并停止动作。
-e<范本样式>或--regexp=<范本样式>:指定字符串做为查找文件内容的样式。
-E或--extended-regexp:将样式为延伸的正则表达式来使用。
-f<规则文件>或--file=<规则文件>:指定规则文件,其内容含有一个或多个规则样式,让grep查找符合规则条件的文件内容,格式为每行一个规则样式。
-F或--fixed-regexp:将样式视为固定字符串的列表。
-G或--basic-regexp:将样式视为普通的表示法来使用。
-h或--no-filename:在显示符合样式的那一行之前,不标示该行所属的文件名称。
-H或--with-filename:在显示符合样式的那一行之前,表示该行所属的文件名称。
………………
参数较多,就不为大家一一讲解了!
grep(global search regular expression(RE)and print out the line 即:全面搜索正则表达式并把行打印出来)命令是一个强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来。
grep [option] pattern file
-a:不要忽略二进制数据
-A<n>:除了显示匹配的行外,还显示之后的n行
-b:在符合条件的行之前,显示该行第一个字符的编号
-B<n>:除了显示符合条件的行外,还显示之前的n行
-c:计算符合条件的列数
-C<n>:除了显示符合条件的行外,显示该行之前和之后各n行
-H:显示匹配行所属文件名
-i:不区别大小写
-n:列出符合条件的行,并显示行号
-r:查询文件夹的内容
-x:只显示全行符合的行
-o:只显示匹配到的内容
递归搜索
grep -r -n "ql2500" .
参考自 linux学习笔记24---命令grep
1、grep:用于查找文件里符合条件的字符串(内容)。丰富的参数用于对搜索过程的补充。命令模式十分灵活,可以是变量、字符串、正则表达式。
2、linux 支持 grep、egrep 和 fgrep。grep 和 egrep 都支持正则表达式,只不过 egrep 支持的是扩展正则表达式。fgrep 不支持正则表达式,只支持普通字符串的过滤。
3、grep 加上相应的参数可以实现 egrep 和 fgrep 的功能。所以,也可以用 grep 加上对应的参数来执行 egrep 和 fgrep。
4、通过 man grep 查看说明。
5、grep 命令的基本 *** 作:
②、grep 根据条件过滤文件内容。
三、grep 命令的常用参数。
①、--color=auto:对匹配的字符串用高光显示。
②、-v:排除过滤条件的行,也就是显示排除条件以外的内容。
③、-i:忽略大小写。
④、-n:显示匹配的行号,列出内容的同时也列出行号。
⑤、-c:统计匹配的行数,只列出共多少行符合过略条件,不列出内容。
⑥、-o:仅显示匹配的字符串,只显示文本中含过滤条件的字符串。
⑦、-q:静默模式,不输出任何信息。用于返回值判断,不考虑输出内容。
⑧、-A:(after),显示包含当前字符串的后多少行。
⑨、-B:(before),显示包含当前字符串的前多少行。
⑩、-C:(context),显示包含当前字符串的前后多少行。
⑩-①、-e:or,或。用于多个参数间的逻辑 或 判断。
⑩-②、-w:精确匹配,匹配整个单词。
⑩-③、-f:把过滤条件放到文件中,通过读取文件的过滤条件进行过滤。
⑩-④、-E:使用 egrep。(支持扩展正则表达式)
⑩-⑤、-F:使用 fgrep(不支持正则表达式)。
②、-v:排除过滤条件的行,也就是显示排除条件以外的内容。
③、-i:忽略大小写。
④、-n:显示匹配的行号,列出内容的同时也列出行号。
⑤、-c:统计匹配的行数,只列出共多少行符合过略条件,不列出内容。
⑥、-o:仅显示匹配的字符串,只显示文本中含过滤条件的字符串。
⑦、-q:静默模式,文本中包不包含过滤条件的字符串都不输出任何信息。用于返回值判断,命令执行成功返回 0,失败返回非 0。
⑧、-A:(after),显示包含当前字符串的后多少行。
⑨、-B:(before),显示包含当前字符串的前多少行。
⑩、-C:(context),显示包含当前字符串的前后多少行。
⑩-①、-e:or,或。用于多个参数间的逻辑 或 判断。
⑩-②、-w:精确匹配,匹配整个单词。
⑩-③、-f:把过滤条件放到文件中,通过读取文件的过滤条件进行过滤。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)