码迷,mamicode.com
首页 > 系统相关 > 详细

linux中grep命令

时间:2017-12-12 12:29:12      阅读:239      评论:0      收藏:0      [点我收藏+]

标签:lin   显示   正则   data-   常用   data   body   意义   cin   

grep 是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来。

grep常用用法

[root@www ~]# grep [-acinv] [--color=auto] 搜寻字符串 filename
选项与参数:
-a :将 binary 文件以 text 文件的方式搜寻数据
-c :计算找到 搜寻字符串 的次数
-i :忽略大小写的不同,所以大小写视为相同
-n :顺便输出行号
-v :反向选择,亦即显示出没有 搜寻字符串 内容的那一行!
--color=auto :可以将找到的关键词部分加上颜色的显示喔!

1、将filename中包含w的行输出来

[root@zhoucentos log]# grep w filename 
wo ai wo jia
wo hen hao
da jia hao wo shi yi ge hao ren

 2、把行号显示出来

[root@zhoucentos log]# grep -n w filename 
1:wo ai wo jia
3:wo hen hao
4:da jia hao wo shi yi ge hao ren

3、有多少行含有匹配的模式

[root@zhoucentos log]# grep -c wo filename 
3

4、与正则表达式结合

字符类的搜索:搜寻 test 或 taste 这两个单字, [] 里面不论有几个字节,他都谨代表某『一个』字节

[root@zhoucentos log]# grep t[ae]st filename 
test is meng
tast is huan

反向搜索--    字符类的反向选择 [^] :如果想要搜索到有 oo 的行,但不想要 oo 前面有 g,如下

[root@zhoucentos log]# grep -n [^g]oo filename 
8:root is a super

 行首与行尾字节 ^ $

注意:

^ 符号,在字符类符号(括号[])之内与之外是不同的! 在 [] 内代表『反向选择』,在 [] 之外则代表定位在行首的意义!

只要行首是wo的行

[root@zhoucentos log]# grep -n ^wo filename 
1:wo ai wo jia
3:wo hen hao

找出空白行----只有行首跟行尾 (^$)

[root@zhoucentos log]# grep -n ^$ filename 
6:
9:
10:

任意一个字节 . 与重复字节 *
这两个符号在正则表达式的意义如下:

. (小数点):代表『一定有一个任意字节』的意思;
* (星号):代表『重复前一个字符, 0 到无穷多次』的意思,为组合形态

[root@zhoucentos log]# grep -n ‘g..d‘ filename
8:good is a gread

linux中grep命令

标签:lin   显示   正则   data-   常用   data   body   意义   cin   

原文地址:http://www.cnblogs.com/fulucky/p/8023025.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!