怎么在linux中使用grep命令

  介绍

怎么在linux中使用grep命令?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。

<强> linux grep命令

linux grep命令用于查找文件里符合条件的字符串;也可以用于查找内容包含指定的范本样式的文件。它能使用正则表达式搜索,用于在文件中搜索指定的字符串模式,列出含有匹配模式子符串的文件名,并输出含有该字符串的文本行。

grep的工作方式是这样的:它在一个或多个文件中搜索字符串模板。如果模板包括空格,则必须被引,用模板后的所有字符串被看作文件名。搜索的结果被送到标准输出,不影响原文件内容。

基本语法:

grep [选项],pattern [文件]

<强>[选项]的主要参数:

——或——文本:不要忽略二进制的数据。

-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  test 测试*

输出:

testfile1:却;能够a  Linux 测试文件!,#列出testfile1 文件中包含测试字符的行,      testfile_2:却;能够is  a  linux 测试文件!,#列出testfile_2 文件中包含测试字符的行,      testfile_2: Linux  test  #列出testfile_2 文件中包含测试字符的行

示例2:反向查找,通过“-v"参数可以打印出不符合条件行的内容。查找文件名中包含测试的文件中不包含测试的行

怎么在linux中使用grep命令