导读:操作步骤/方法1grep的工作方式2在一个或多个文件中搜索字符串模板。如果模板包括空格,则必须被引用,模板后的所有字符串被看作文件名。搜索的结果被送到屏幕,不影响原文件内容。3首先创建一个演示文档用于后续对grep命令的讲解演示:41在单个文件中搜索特定的字符串,输出为包含特定字符串的文本行52在多个文件中检索指定的字串,输出为包含特定字符串的文件名和文本行6为了演示需要先将刚才的演示文档复制一份...
操作步骤/方法
1
grep的工作方式
2
在一个或多个文件中搜索字符串模板。如果模板包括空格,则必须被引用,模板后的所有字符串被看作文件名。搜索的结果被送到屏幕,不影响原文件内容。
3
首先创建一个演示文档用于后续对grep命令的讲解演示:
4
1在单个文件中搜索特定的字符串,输出为包含特定字符串的文本行
5
2在多个文件中检索指定的字串,输出为包含特定字符串的文件名和文本行
6
为了演示需要先将刚才的演示文档复制一份。输出的文本行前面会加上相应的文件名。
7
3利用grep-i进行大小写无关的搜索
8
将忽略大小写的区别,这样的话,字符串“the”,“The”和“THE”都将被搜索。
9
4使用用正则表达式
10
例如,要搜索全部以“lines”开始以“empty”结束的字串,如搜索“lines[之间任意字]empty”,并且忽略大小写:
11
正则表达式遵循的几个重复的操作:
12
.?最多匹配一次
13
.*匹配零次或者任意多次
14
.+匹配一次以上
15
.{n}匹配n次
16
.{n,}最少匹配n次
17
.{,m}最多匹配m次
18
.{n,m}匹配n到m次
19
5用grep-w搜索整个词,而不是词中的部分字符串
20
搜索包含单词为“is”的文本行,当然包含“his”,“this”等的文本行将忽略:
21
6利用grep-A-B-C显示所匹配的文本行的前/后/前后一些行内容
22
对于一些大型文件,不仅显示所匹配的文本行,而且显示之前/之后/前后的一些文本行也是很有用的。为演示需要,先创建另一个演示文档:
23
1显示匹配行之后的行-A(After)
24
例如,显示匹配行之后的三行内容(空行也算):
25
2显示匹配行之前的行-B(Before)
26
例如,显示匹配行之前的两行内容(空行也算):
27
3显示匹配行前后的行-C
28
例如,显示匹配行前后的各两行内容(空行也算):
29
7高亮显示匹配的内容
30
需要设置GREP_OPTIONS环境变量:
31
然后再进行搜索。
32
8利用grep-r在目录中递归搜索
33
如果在目录中即有文件又有目录,则普通的搜索只搜索文件而不搜索目录,利用-r选项即可递归进行搜索,搜索目录下的所有文件及其子目录内的文件
34
9利用grep-v搜索不包含特定字符串的文本行
35
例如显示所有不包含字符串“go”的文本行:
36
10显示不包含所有几个特定字符串的文本行
37
11利用grep-c统计所匹配的字符串数目
38
例如:
39
查找有多少行匹配字符串:
40
查找有多少行不匹配字符串:
41
12利用grep-l只显示包含特定字符串的文件名称
42
13利用grep-o只显示所匹配的字符串
43
默认的搜索显示的是匹配的文本行的所有内容,但是如果想只显示所搜的特定字符串,则就要使用-o选项了。乍看起来只显示所匹配的字符串好像用处不大,但在使用正则表达式的搜索中很有用处。
44
14显示特定字符串的具体位置
45
例如:
46
15利用grep-n同时显示行号
END
以上就是小编为大家介绍的Linux 中 Grep 命令使用方法的全部内容,如果大家还对相关的内容感兴趣,请持续关注上海建站网!
标签:
内容声明:网站所展示的内容均由第三方用户投稿提供,内容的真实性、准确性和合法性均由发布用户负责。上海建站网对此不承担任何相关连带责任。上海建站网遵循相关法律法规严格审核相关关内容,如您发现页面有任何违法或侵权信息,欢迎向网站举报并提供有效线索,我们将认真核查、及时处理。感谢您的参与和支持!