分享
 
 
 

正規表示法

王朝other·作者佚名  2008-05-19
窄屏简体版  字體: |||超大  

正规表示法:

好了!大概知道一些基本的指令了,那么接下来呢?嗯!谈一谈如何撷取资料部分内容吧!假设你今天需要将这个月份曾经登入过主机的使用者调出来,要执行什么指令呢?

没错!就是 last 这个指令!但是会不会觉得使用 last 时,假如你的登入者太乱了,这样的话很不轻易发现到底我们要调查的那一个使用者在何时出现过?假设我们需要将 root 的资料调出来,那么应该如何作呢?呵呵呵呵!使用 grep 吧!他可以使用比对的方式来将 last 一行一行资料分析,发现该行有 root 这个字时,就会马上将该行调出来!嗯!相当棒的一个指令!而这个就涉及到『正规表示法』的内容了!

正规表示法 ( 也有称为常规表示法的,无论如何,就是 Regular EXPRess 的翻译啦! ) 使用的地方相当的广泛,我们提一个经常用到的例子来做说明好了!假如我们在自己的目录下有相当多的档案,而我要找一个档案,他的内容含有一个字串,叫做是『VBird talk』,那么要如何来找出这个档案呢?很简单啦!就直接将每个档案的内容捉出来,然后逐一加以比对,假如在比对的过程中发现了 VBird talk 这个字串,那么就将该行输出到萤幕上,那么您自然也就可以知道他是在那个档案里面啰!搜寻上面很是简单!而要提到正规表示法就不能不提到 grep 这个指令,底下我们先来谈一谈 grep 这个指令的用法吧!

·grep

语法:

[root @test /root ]# grep "Word" filename 参数说明: 范例: [root @test /root]# grep root /var/log/secure

说明:

在上面的第一个例子中,我们知道系统的登入资讯档都记录在 /var/log/secure 这个登录档中,那么如何将这个档案里面关于 root 的资料取出来呢?!就使用 grep 就对啦!很简单吧!但他是很有用的资讯呦!

例题:我想要知道 /var/log/messages 这个档案里面,所有跟 kernel 有关的文字! 答: 想要知道的是 kernel ,找这个要害字即可,所以直接: grep kernel /var/log/messages

例题:我想要知道某个档案里面含有 boot 的字眼,而这个档案在 /etc/ 底下,我要如何找出这个档案? 答: 既然知道有这个字眼那就好办了!可以直接下达: grep boot /etc/*

例题:我想要找出在 /etc 底下,档案内容含有 * 的档案名称? 答: 由于 * 是非凡字元,在变数的订定法则里面曾经提过要将非凡字元移除,需要使用跳脱字元,亦即是 \ 符号,所以我可以这样下达指令: grep \* /etc/*

此外,除了正规表示法之外,我们还可以藉由万用字元的搭配来进行字串的搜索与其他相关的使用。底下列出几个常见的咚咚让大家了解一下!

·例题:我记得有个档案在 /etc/ 底下,而且他的内容中,有一行是以 boot 做为开头,我要如何查询这个档案呢? 答: 由于知道 boot 是在该行的第一个字元,所以我可以这样找出来: grep ^boot /etc/* 对照上面的表格后,您应该可以了解, ^ 表示『句首』的意思!

题:我想要知道,在 /etc 底下,只要含有 XYZ 三个字元的任何一个字元的那一行就列出来,要怎样进行? 答: 『只要』含有 X 或 Y 或 Z 就将该行列出来,因此,我们的范围很很广啦!这个时候就必需要使用到 [] 这个咚咚!还记得中括号的用途吗?那就是『在中括号里面谨代表一个字元而已!』而这个中括号是一个『代表』,可以是一串字也可以是几个不连续的字!这里我们仅需要 XYZ 其中任何一个,所以可以这样写: grep [XYZ] /etc/* 则只要在每一行当中,只要发现 X 或 Y 或 Z 任何一个,就会将他印出来!这个与 grep XYZ /etc/* 是『完全不一样』的!请仔细的思考一下ㄟ!

例题:我想要知道在 /etc 里面,只要句首是 w-z 的就将他印出来? 答: 同样的,使用中括号! grep ^[w-z] /etc/*

当然还有很多很多用法啦!究竟一个正规表示法加上他附属的一些指令,几乎可以出一本书了,这里仅是想让大家了解他的好处罢了!所以就写到这里!其他的,就等着您去参详与发现啰!

·diff

语法:

[root @test /root ]# diff file1 file2 参数说明: 范例: [root @test /root]# diff index.htm index.Html

说明:

这是用来比较两个档案内容是否有不一致的指令!

·awk

语法:

[root @test /root ]# last awk '{print $1 " " $2}' 参数说明: 范例: [root @test /root]#

说明:

施工中

·sed

语法:

[root @test /root ]# last sed 10,

\$d参数说明: 范例: [root @test /root]#

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有