小编给大家分享一下linux中使用grep命令的方法,希望大家阅读完这篇文章后大所收获、下面让我们一起去探讨吧!
linux系统中grep命令是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来。
linux grep命令用于查找文件里符合条件的字符串;也可以用于查找内容包含指定的范本样式的文件。它能使用正则表达式搜索,用于在文件中搜索指定的字符串模式,列出含有匹配模式子符串的文件名,并输出含有该字符串的文本行。
grep的工作方式是这样的:它在一个或多个文件中搜索字符串模板。如果模板包括空格,则必须被引,用模板后的所有字符串被看作文件名。搜索的结果被送到标准输出,不影响原文件内容。
<>强基本语法:强>
grep[选项]模式[文件]
<强>[选项]的主要参数:强>
——或——文本:不要忽略二进制的数据。
-A<显示行数比;或——after-context=& lt;显示行数比;:除了显示符合范本样式的那一列之外,并显示该行之后的内容。
- b或字节偏移:在显示符合样式的那一行之前,标示出该行第一个字符的编号。
-B<显示行数比;或——before-context=& lt;显示行数比;:除了显示符合样式的那一行之外,并显示该行之前的内容。
- c或——数:计算符合样式的列数。
-C<显示行数比;或,上下文=& lt;显示行数祝辞或& lt;显示行数比;:除了显示符合样式的那一行之外,并显示该行之前后的内容。
- d & lt;动作的在或目录——=& lt;动作的在:当指定要查找的是目录而非文件时,必须使用这项参数,否则grep指令将回报信息并停止动作。
-e<范本样式比;或- regexp=& lt;范本样式比;:指定字符串做为查找文件内容的样式。
- e或——extended-regexp:将样式为延伸的普通表示法来使用。
-f<规则文件比;或——文件=& lt;规则文件比;:指定规则文件,其内容含有一个或多个规则样式,让grep查找符合规则条件的文件内容,格式为每行一个规则样式。
- f或——fixed-regexp:将样式视为固定字符串的列表。
- g或——basic-regexp:将样式视为普通的表示法来使用。
- h或——no-filename:在显示符合样式的那一行之前,不标示该行所属的文件名称。
- h或——with-filename:在显示符合样式的那一行之前,表示该行所属的文件名称。
我或——忽略大小写:忽略字符大小写的差别。
- l或——file-with-matches:列出文件内容符合指定的样式的文件名称。
- l或——files-without-match:列出文件内容不符合指定的样式的文件名称。
- n或——行编号:在显示符合样式的那一行之前,标示出该行的列数编号。
- o或——only-matching:只显示匹配模式部分。
q或——安静或沉默:不显示任何信息。
- r或——递归:此参数的效果和指定“- d recurse"参数相同。
s或——没有信息:不显示错误信息。
- v或——revert-match:显示不包含匹配文本的所有行。
- v或——版本:显示版本信息。
- w或——word-regexp:只显示全字符合的列。
- x——line-regexp:只显示全列符合的列。
- y:此参数的效果和指定“我;参数相同。
- ?:同时显示匹配行上下的吗?行,如:grep 2模式文件名同时显示匹配行的上下两行。
<强>模式正则表达式主要参数:强>
\:忽略正则表达式中特殊字符的原含义。
^:匹配正则表达式的开始行。
美元:匹配正则表达式的结束行。
\ & lt;:从匹配正则表达式的行开始。
\祝辞:到匹配正则表达式的行结束。
[]:单个字符,如(一)即符合要求。
[-]:范围,如[A - Z],即A, B, C一直到Z都符合要求。
。:所有的单个字符。
*:有字符,长度可以为0。
<强> 强>
<强>示例1:强>在当前目录中,查找前缀有“测试”字样的文件中包含“测试”字符串的文件,并打印出该字符串的行,此时,可以使用如下命令:
grep测试测试*
输出:
testfile1:这个Linux测试文件!#列出testfile1文件中包含测试字符的行 testfile_2:这是一个linux测试文件!#列出testfile_2文件中包含测试字符的行 testfile_2: Linux测试#列出testfile_2文件中包含测试字符的行linux中使用grep命令的方法