文本三剑客之使用正则表达式的grep实例
实例1、从/etc/passwd文件中查找匹配root模式所匹配的行
grep 'root' /etc/passwd --color
实例2、从grep1.txt中查找至少9个小写字母出现的行
grep '[a-z]\{9\}' grep1.txt--color
实例3、从grep1.txt文件中打印grep1.txt文件中所有包含miss的行
grep'miss' grep1.txt--color
实例4、从grep1.txt文件中打印所有以m开头的行
grep m* grep1.txt--color
实例5、从grep1.txt文件中打印所有以字母i开头的行
grep '^i' grep1.txt--color
实例6、从grep1.txt文件中打印所有以数字1结尾的行
grep'1$' grep1.txt--color
实例7、从grep1.txt文件中打印所有包含模式 mi和 ss的所有行
grep 'mi ss' grep1.txt--color
实例8、从grep1.txt文件中打印所有以数字62开头,后面跟了一个句点,再跟一个任意字符的行
grep '62\..'grep1.txt--color
注释:句点这个元字符通常代表单个字符,除非它做反斜杠转义。
句点被转义之后就不再是特殊的元字符,而只代表其本身,即一个句号。
实例9、从grep1.txt文件中打印所有以句点开头,后面跟了任意一个数字的行
grep '\.[0-9]' grep1.txt--color
实例10、从grep1.txt文件中打印所有以非数字开头的行
grep [^0-9] grep1.txt--color
实例11、从grep1.txt中打印所有包含以miss单词开头的所有行
grep '\<miss' grep1.txt--color
注释:\<是词首定位符
实例12、从grep1.txt文件打印所有包含单词miss的行
grep'\<miss\>'grep1.txt--color
注释:\<是词首定位符,\>是词尾定位符
实例13、从grep1.txt文件中打印所有以小写字母开头,以s结尾,中间由任意多个字符组成的单词的行。
grep '\<[a-z].*s\>' grep1.txt--color
注释:符号.*代表任意字符,包括空格
grep的一些常用选项
1、从grep1.txt文件中打印所有以love开头的行,并标记行号
grep '\<[a-z].*s\>' grep1.txt--color
2、从grep1.txt文件中打印所有包含miss的行,不缺分大小写
grep-i 'miss' grep1.txt--color
-i选项关闭大小写敏感性
3、从grep1.txt文件中打印所有不包含模式a-z所有小写字母的所有行
grep -v '[a-z]' grep1.txt
4、从grep1.txt文件中输出包含keep模式的文件名,并不显示其文本
grep -I 'keep' grep1.txt--color
5、-c 让grep打印出含有模式的行的数目这个。这个数字并不代表模式的出现次数,例如
即使miss在某行中出现了3次,这行也只计一次。
grep -c 'miss' grep1.txt--color
6、从grep1.txt文件中只打印
-w选项使grep只查找作为一个词,而不是词的一部分出现的模式。
grep -w 'beautiful' grep1.txt --color
grep与管道
grep的输入并不一定都是文件,它也常常从管道读取输入
[root@localhost data]# ls -l 总用量 12 drwxr-xr-x. 2 root root 4096 4月11 20:04 dir1 -rw-r--r--. 1 root root 1970 4月11 19:45 grep1.txt -rw-r--r--. 1 root root0 4月11 19:47 logname.txt -rw-r--r--. 1 root root388 4月11 17:21 test1.txt [root@localhost data]# ls |grep ^d dir1
ls的命令通过管道传送给grep.输出结果中以zimud开头的所有行都被打印出来,也就是说,所有目录都被打印出来
附文中所用代码:
imissyousomuch i miss you so much iloooooooooovyou so much! looooooooooove rose so much! Todayisthefirst time we...... linuc linus linuc like love likke lovve I miss you so much! i miss you so much! Miss zhang is teaching our english I MISS YOU SO MUCH! MISS li love me love my all 2014 04 11 darling i miss you so mucn 04 11 mi ss miss miss mi miss you so much! ss miss you soooo much! 62.73.115.50 62. 33 33 33 6.2. 73 .6 .8 .1 .2 .3 .4 .5 .6 .66 miss sdffsffsffss ssuousourusoss love your parents. We are too busy growing up yet we forget that they are already growing old――多关心一下自己的父母吧,我们总忙着自己成长,却忘了他们也在变老。 The moment you think about giving up,think of the reason why you held on so long――每当你想放弃的时候,想一想是什么支撑着你一路坚持。 I don't wanna be your 'number one' that implies there are a number two and maybe a number three. I want to be your only one――我不想做你的“第一”,因为那就意味着还有第二,第三……我只想做你的“唯一”。 Total umbrella for someone else if he,you're just not for him in the rain.――如果他总为别人撑伞,你又何苦非为他等在雨中。 Hold my hand,you won't get lost even with eyes closed. ――握住我的手,即使你�上眼睛也不�迷路。 We never really grow up. We only learn how to act in public. ――我们从未真正长大,我们只是在别人面前学会了假装。 Each trauma,is another kind of maturity. ――每一种创伤,都是另一种成熟。 Fortune favours the brave――运气往往眷顾勇敢的人。 You keep on concentrating on the things you wish you had or things you wish you didn’t have and you sort of forget what you do have.-Nick Vujicic――如果你不停的纠结于你所没有的或者不想要的,你就会忘记你真正拥有的。―尼克胡哲 beautiful beautifulest
限于作者水平有限,文中难免有错误和不足之处请大家多多指点