下载此文档

shell脚本-正则表达式.docx


文档分类:IT计算机 | 页数:约21页 举报非法文档有奖
1/21
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/21 下载此文档
文档列表 文档介绍
正则表达式
什么是正规表示法
任何一个有经验的系统管理员,都会告诉你:『正规表示法真是挺重要的!』为什么很重要呢?因为日常生活就使用的到啊!举个例子来说, 在你日常使用 vim 作文书处理或程序撰写时使用到的『搜寻/取代』等等的功能, 这些举动要作的漂亮,就得要配合正规表示法来处理罗!
简单的说,正规表示法就是处理字串的方法,他是以行为单位来进行字串的处理行为, 正规表示法透过一些特殊符号的辅助,可以让使用者轻易的达到『搜寻/删除/取代』某特定字串的处理程序!
正规表示法对於系统管理员的用途
那么为何我需要学习正规表示法呢?对於一般使用者来说,由於使用到正规表示法的机会可能不怎么多, 因此感受不到他的魅力,不过,对於身为系统管理员的你来说,正规表示法则是一个『不可不学的好东西!』怎么说呢?由於系统如果在繁忙的情况之下,每天产生的信息资讯会多到你无法想像的地步, 而我们也都知道,系统的『错误信息登录文件(第十九章)』的内容记载了系统产生的所有信息,当然,这包含你的系统是否被『入侵』的记录数据。
但是系统的数据量太大了,要身为系统管理员的你每天去看这么多的信息数据, 从千百行的数据里面找出一行有问题的信息,呵呵~光是用肉眼去看,想不疯掉都很难! 这个时候,我们就可以透过『正规表示法』的功能,将这些登录的资讯进行处理, 仅取出『有问题』的资讯来进行分析,哈哈!如此一来,你的系统管理工作将会『快乐得不得了』啊!当然,正规表示法的优点还不止於此,等你有一定程度的了解之后,你会爱上他喔!
正规表示法与 Shell 在 Linux 当中的角色定位
说实在的,我们在学数学的时候,一个很重要、但是粉难的东西是一定要『背』的, 那就是九九乘法表,背成功了之后,未来在数学应用的路途上,真是一帆风顺啊! 这个九九乘法表我们在小学的时候几乎背了一整年才背下来,并不是这么好背的呢! 但他却是基础当中的基础!你现在一定受惠相当的多呢^_^!
而我们谈到的这个正规表示法,与前一章的 BASH 就有点像是数学的九九乘法表一样,是 Linux 基础当中的基础,虽然也是最难的部分, 不过,如果学成了之后,一定是『大大的有帮助』的!这就好像是金庸小说里面的学武难关:任督二脉! 打通任督二脉之后,武功立刻成倍成长!所以啦, 不论是对於系统的认识与系统的管理部分,他都有很棒的辅助啊!请好好的学习这个基础吧! ^_^
grep 的一些进阶选项
我们在第十一章 BASH 里面的 grep 谈论过一些基础用法, 但其实 grep 还有不少的进阶用法喔!底下我们仅列出较进阶的 grep 选项与参数给大家参考, 基础的 grep 用法请参考前一章的说明罗!
[******@www ~]# grep [-A] [-B] [--color=auto] '搜寻字串' filename
选项与参数:
-A :后面可加数字,为 after 的意思,除了列出该行外,后续的 n 行也列出来;
-B :后面可加数字,为 befer 的意思,除了列出该行外,前面的 n 行也列出来;
--color=auto 可将正确的那个撷取数据列出颜色
范例一:用 dmesg 列出核心信息,再以 grep 找出内含 eth 那行
[******@www ~]# dmesg | grep 'eth'
eth0: RealTek RTL8139 at 0xee846000, 00::a6:34:84, IRQ 10
eth0: Identified 8139 chip type 'RTL-8139C'
eth0: link up, 100Mbps, full-duplex, lpa 0xC5E1
eth0: no IPv6 routers present
# dmesg 可列出核心产生的信息!透过 grep 来撷取网络卡相关资讯(eth) ,
# 就可发现如上资讯。不过没有行号与特殊颜色显示!看看下个范例吧!
范例二:承上题,要将捉到的关键字显色,且加上行号来表示:
[******@www ~]# dmesg | grep -n --color=auto 'eth'
247:eth0: RealTek RTL8139 at 0xee846000, 00::a6:34:84, IRQ 10
248:eth0: Identified 8139 chip type 'RTL-8139C'
294:eth0: link up, 100Mbps, full-duplex, lpa 0xC5E1
305:eth0: no IPv6 routers present
# 你会发现除了 eth 会有特殊颜色来表示之外,最前面还有行号喔!
范例三:承上题,在关键字所在行的前两行与后三

shell脚本-正则表达式 来自淘豆网m.daumloan.com转载请标明出处.

非法内容举报中心
文档信息
  • 页数21
  • 收藏数0 收藏
  • 顶次数0
  • 上传人紫岑旖旎
  • 文件大小0 KB
  • 时间2012-07-25
最近更新