Linuxgrep正则表达式和grep用法详解

你需要记住,正则表达式是不是通配符一样,他们有着不同的含义。

一个正则表达式只是描述了一个字符串,可以只处理工具相结合的工具,支持正则表达式。本文以grep为例讲解正则表达式。

grep命令

函数:在输入文件的每一行中查找字符串。

基本用法:

grep { } { -酸性转化酶-颜色=汽车} { } {一}B搜索字符串的文件名

参数描述:

a:用文本处理二进制文档

丙:显示比赛的次数

I:忽略大小和大小的差异

在显示行号的开头

答:在意思后面,在匹配字符串后面显示N行的数据。

在含义之前,在匹配字符串之前显示N行的数据。

- v:显示没有匹配线的意思a:之后,显示N线B的意思:在匹配部分之前,在匹配部分之前显示n行。

颜色:用特定颜色显示匹配键



的颜色的选择是一个很好的选择,明确你能够符合这些特征。最好添加到你自己的。or.bash_profile bashrc文件:

别名grep = grep——颜色=汽车



每个grep搜索后,它会自动聚焦的匹配效果。

搜索字符串是正则表达式。注意,为了避免shell的元字符对正则表达式的影响,请使用单引号()。不要用双引号来包装(或不)。

正则表达式分为基本正则表达式和扩展正则表达式。

基本的正则表达式

正则表达式学习主要是正则表达式元数据的学习,正则表达式本身没有什么高的,本文只总结了基本正则表达式的元数据。





总的来说,grep支持基本的正则表达式,通过参数E支持扩展正则表达式和grep命令分别提供了一个扩展,称为egrep扩展正则表达式支持,这相当于grep -e.in一般,基本的正则表达式是足够的。在特殊情况下,可以简化复杂的扩展表达式字符串匹配。

扩展正则表达式是在基本正则表达式的基础上添加一些元数据。


在Linux的统治下,正则表达式博大精深。以上部分是对最常用部分的总结。如果上面部分的正则表达式比较熟悉,基本上可以满足日常使用。

此外,许多Linux命令支持正则表达式,如发现,sed,awk,等等。请使用正则表达式在参考这些命令,手动使用时。

Linux grep的正则表达式

grep正则表达式元字符集:

该^锚线开始是这样的:^ grep'matches所有管路初用grep。

美元的锚定线,最后如:'grep 'matches美元所有行结束与grep。

一个字符匹配一个非换行符,如:'gr.p'matches GR,然后一个任意字符,然后P.

*匹配零个或多个线上面的字符,如:×grep'matches所有一个或多个空格和遵循grep连同任何品质的代表。

{ },一个指定范围内的字符,如{ }代表GG,grep和grep。

{ ^ },一个不在指定范围内的字符,如:{ ^ a-fh-z }代表,起初A-R和t-z不包含字母,其次是代表线。

( )标签匹配字符(如、Love)标记为1。

锚定词如:,包含文字从grep线。

>锚文字的结束,这样的as'grep >,包含在字线端grep。

X { m }重复字符x,m次,如:0 } { 5 'matches一行含有5 O.

X {m, }重复字符x,至少M倍,如:○◎◎{ 5 },至少有5个O线。

X { m,n }重复字符x至少m次,不超过N次,如:O } { 10 'matches行5—10 O.

◎W文字和数字字符,即{就},如:G 宽×p'matches零个或多个文字或数字字符,其次是G,然后P.

◎锁定B字,如: bgrep b'only比赛grep。

常见的grep选项:

- c仅输出匹配行的数目。

-我不区分案例和案例(只针对单个字符)。

h在查询多个文件时不显示文件名。

当l查询多个文件时,只导出包含匹配字符的文件的名称。

n显示匹配行和行号。

s不显示非匹配文本或非匹配文本的错误信息。

v表示它不包含与文本匹配的所有行。

-显示软件版本信息

使用grep匹配时,最好是使用双引号来防止系统错误的参数或特殊的命令或匹配一个单词的个数。

关于匹配实例:

grep C 48 test.txt统计,48字开头的所有行



执行我可能test.txt不区分案件从案件所有可能的线)



grep -n 48 test.txt显示行数;线与线数显示匹配的字符为48 NL test.txt | grep 48相同)



grep -v 48 test.txt显示输出没有字符48行。



在471test.txt显示输出字符471行。)



grep48;test.txt显示输出从一个字符48和48后的字符TAB键的行



grep48 { 34 }test.txt显示输出开始的字符48和第三个字符都是3或4行)。



grep^ ^ { 48 }test.txt不显示输出字符48线)



grep{毫米}是test.txt设置下的情况:显示输出的第一个字符开始,M或M,结束字符是线)



grepK. Dtest.txt输出显示的第一个字符是K,第二,第三,第四是一个任意的字符,和第五个字符是D线)。



grep{ A-Z } { 9 } Dtest.txt显示范围内的第一个字符的输出是A,第二字符是9,和第三的特点是所有的行



grep{ 35 } 1998。test.txt显示第一个字符是3或5,两个或三个字符是任意的,和所有的行结束的1998



grep 4 { 2 }发现test.txt模式概率:显示至少4个重复两次所有的输出特性



grep 9 { 3 }发现test.txt模式概率:显示输出字符至少重复三次为9



grep 9 { 2,3 }test.txt模式出现的机会查找:显示输出字符9出现在一定范围内,重复2或3行



grep -ntest.txt ^ $ 输出显示行号。



LS—L | grep^ D如果你要查询的目录列表中的目录:LS—D *



LS—L | grep^ D { }查询不包含在一个目录中的所有文件



LS—L | GrpE^ D ..... X。X查询目录的执行权限集合与其他用户和用户组的成员

grep和正则表达式和Linux grep正则表达式介绍给你。希望你能喜欢。