Chinaunix首页 | 论坛 | 博客
  • 博客访问: 182855
  • 博文数量: 76
  • 博客积分: 2510
  • 博客等级: 少校
  • 技术积分: 831
  • 用 户 组: 普通用户
  • 注册时间: 2007-12-31 00:52
文章分类

全部博文(76)

文章存档

2010年(58)

2009年(18)

我的朋友

分类:

2010-01-27 15:13:12

grep option RE filename

发现了要查找的模式,退出状态为0
找不到要查找的模式,退出状态为1
找不到指定的文件时,退出状态为2

选项
-i    
    忽略大小写
-r    
    递归查找文件,包括文件的内容
-n    
    加上行号
-v    
    反向查找,列出不匹配的行
-c    
    显示匹配到的行的数目,不显示行的内容
-A -B -C
    显示行数控制


元字符
^    
    行首定位符
    grep '^love' filename    匹配所有love开头的行
$    
    行尾定位符
    grep 'love$' filename    匹配所有以love结尾的行
.    
    匹配一个字符
    grep 'l..e' filename    匹配包含一个l,后跟两个字符,再跟一个e的行
*    
    匹配零或多个前导字符
    grep 'love1*' filename    匹配包含0或多个1的模式love的行
[]    
    匹配一组字符中的任一个
    grep '[Ll]ove' filename    匹配包含love或Love模式的行
[^]    
    匹配不在指定字符内的字符
    grep '[^a-z]ove' filename
\<    
    词首定位符
\>    
    词尾定位符
    grep '\<[a-z].*n\>' filename
x\{m\}    
    字符x的重复出现次数为m次
x\{m,\}    
    字符x的重复出现次数至少为m次
x\{m,n\}
    字符x的重复出现次数为至少m次,但不超过n次
    grep v\{1,2\} filename
\(..\)    
    标志匹配到的字符,最多可以设置9个标签,从\1开始
    grep '\(v\)[a-z]\1' filename    可以匹配出lovev,\1被标志为v


Example:

grep -irn 'string' file           //在file中查找string, 忽略大小写,并在结果加上行号
grep -rrn 'string' dir            //在目录中递归查找string,忽略大小写,并在结果加上行号
egrep 'hello|hi' file             //在file中查找字符串hello或者hi


阅读(714) | 评论(0) | 转发(0) |
0

上一篇:Nice website

下一篇:awk usage

给主人留下些什么吧!~~