Shell编程三剑客之grep

系统运维 正则表达式

正则表达式的定义:
正则表达式又称正规表达式、常规表达式。在代码中常简写为 regex、regexp 或 RE。正则表达式是使用单个字符串来描述、匹配一系列符合某个句法规则的字符串,简单来说, 是一种匹配字符串的方法,通过一些特殊符号,实现快速查找、删除、替换某个特定字符串。
基础正则表达式
以httpd配置文件为例
为了防止失误对httpd的配置文件造成损坏,首先我们先拷贝一份httpd配置文件到别处。

1)、查找特定字符
可从httpd.txt文件中查找出特定字符“the” 所在位置
可以使用命令:grep -n \'the\' httpd.txt

查找不包含“the”字符的行
可以使用命令:grep -vn \'the\' httpd.txt

2)、利用中括号“[]”来查找集合字符
想要查找“then”与“they”这两个字符串时,可以发现这两个字符串均包含“the”。此时执行以下命令:grep -n \'the[ny]\' httpd.txt
即可同时查找到“then”与“they”这两个字符串。“[]”中无论有几个字符,都仅代表一个字符,也就是说“[ny]”表示匹配“n”或者“y”。

查找包含重复单个字符“oo”时
可以使用命令:grep -n \'oo\' httpd.txt

查找“oo”前面不是“r”的字符串
可以使用命令:grep -n \'[^r]oo\' httpd.txt

10年的盐亭网站建设经验,针对设计、前端、开发、售后、文案、推广等六对一服务,响应快,48小时及时工作处理。成都营销网站建设的优势是能够根据用户设备显示端的尺寸不同,自动调整盐亭建站的显示方式,使网站能够适用不同显示终端,在浏览器中调整网站的宽度,无论在任何一种浏览器上浏览网站,都能展现优雅布局与设计,从而大程度地提升浏览体验。成都创新互联公司从事“盐亭网站设计”,“盐亭网站推广”以来,每个客户项目都认真落实执行。

若不希望“oo”前面存在大写字母,可以使用“grep –n\'[^A-Z]oo\'httpd.txt”命令实现

查找包含数字的行可以通过“grep –n \'[0-9]\' httpd.txt”命令来实现

3)、查找行首“^”与行尾字符“$”
查询大写字母开头的行使用grep -n \'^[A-Z]\' httpd.txt

查询“.”结尾的行使用grep -n \'.$\' httpd.txt
因为小数点(.) 在正则表达式中也是一个元字符(后面会讲到),所以在这里需要用转义字符“\\”将具有特 殊意义的字符转化成普通字符。

查询空白行时,执行“grep –n ‘^$’ httpd.txt”命令

4)、查找任意一个字符“.”与重复字符“*”
在正则表达式中小数点(.)也是一个元字符,代表任意一个字符,例如,查找以r开头,t结尾,中间两个未知字符的字符串,可以使用命令grep -n \'r..t\' httpd.txt。

查询包含至少两个 o 以上的字符串,则执行“grep –n ‘ooo*’ httpd.txt”命令即可。

5)、查找连续字符范围“{}”
因为“{}”在 Shell 中具有特殊 意义,所以在使用“{}”字符时,需要利用转义字符“\\”,将“{}”字符转换成普通字符
(1)查询两个 o 的字符
grep -n \'o\\{2\\}\' httpd.txt

网页名称:Shell编程三剑客之grep
分享网址:https://www.cdcxhl.com/article38/cpepsp.html

成都网站建设公司_创新互联,为您提供外贸建站网站内链自适应网站网站营销微信公众号定制网站

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

h5响应式网站建设