在linux下,grep(global search regular expression(RE) and print out the line,全面搜索正则表达式并把行打印出来)是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来。

grep的参数设置

linux系统grep命令怎么退出(Linux下grep的用法的讲解)(1)

grep的常见用法:

linux系统grep命令怎么退出(Linux下grep的用法的讲解)(2)

grep使用正则表达式的写法:

linux系统grep命令怎么退出(Linux下grep的用法的讲解)(3)

基本正则表达式:Basic REGEXP

元字符

描述

.

匹配任意单个字符

*

匹配其前面的字符任意次

.*

任意长度的任意字符

[]

匹配指定范围内的任意单个字符

[^]

匹配指定范围外的任意单个字符

[:lower:]

小写字母

[:upper:]

大写字母

[:alpha:]

所有字母

[:digit:]

数字

[:alnum:]

所有数字和字母

[:punct:]

标点符号

[:space:]

空白字符

\?

匹配其前面的字符1次或0次

\{m,n\}

匹配其前面的字符至少m次,至多n次

^

铆定行首,此字符后面的任意内容必须出现在行首

$

铆定行尾,此字符前面的任意内容必须出现在行尾

^$

表示空白行

\<或\b

铆定词首,其后面的任意字符必须作为单词的首部出现

\>或\b

铆定词尾,其前面的任意字符必须作为单词的尾部出现

\(\)

分组

\(ab\)*

ab作为一个整体,可以出现任意次

\(ab\).*\1

引用第一个左括号以及与之对应的右括号所包括的所有内容

\(ab\).*\2

引用第二个左括号以及与之对应的右括号所包括的所有内容

扩展正则表达式:Extended REGEXP

字符匹配

.

匹配任意单个字符

[]

匹配指定范围内的任意单个字符

[^]

匹配指定范围外的任意单个字符

次数匹配

*

匹配其前字符任意次

?

匹配其前字符0次或1次

匹配其前字符至少1次,类似于基本正则表达式\{1,\}

{m,n}

匹配其前面的字符至少m次,至多n次

位置铆定

^

行首

$

行尾

\<或\b

词首

\>或\b

词尾

分组

().*\1\2\3

或者

|

or a|b ,a或者b ,有一个就行

C|Cat--> C或cat

(C|c)at-->Cat或cat

grep一些其他命令,需要经常的使用,慢慢的摸索,那样你才会更加熟练的使用grep命令,让你的熟练程度更加一步的。

,