有data.f文件
48 Dec 3BC1997 LPSX 68.00 LVX2A 138
483 Sept 5AP1996 USP 65.00 LVX2C 189
47 Oct 3ZL1998 LPSX 43.00 KVM9D 512
219 dec 2CC1999 CAD 23.00 PLV2C 68
484 nov 7PL1996 CAD 49.00 PLV2C 234
483 may 5PA1998 USP 37.00 KVM9D 644
216 sept 3ZL1998 USP 86.00 KVM9E 234
现统计含有"48"字符的行数
$grep -c "48" data.f
显示包含"48"字符串的文本
$grep "48" data.f
精确匹配含有"48"字符串的文本
$grep "48\>" data.f
抽取含有“sept”的文本行,并且忽略大小写
grep -i "sept" data.f
匹配有484或483的行
grep '48[34]' data.f
不匹配行首,可用^记号,查找行首不是48的文本行
grep '^[^48]' data.f
抽取包含Sept的所有月份,不管其大小写,并且此行包括字符串483,可用管道
$grep '[Ss]ept' data.f | grep 483
匹配以K开头,D为结尾的所有文本行
$grep 'K..D' data.f
查询所有以5开头以1996或1998结尾的所有记录
$grep '5..199[6,8]' data.f
查询第一个字符为任意字符,第二个在0到5之间,第三个在0到6之间的文本行
$grep '[0-9][0-5][0-6]' data.f
查看包含数字4至少两次的记录
grep '4\{2,\}' data.f
查看包含数字9两次的记录
grep '9\{2\}' data.f
查询空行
grep '^$' myfile
查询IP地址
grep '[0-9]\{\3\}.[0-0\[3\}\.' ipfile
查询目录列表中的目录
$ls -l | grep '^d'
查询不包含目录的所有文件
$ls -l | grep '^[^d]'
查看DNS服务是否运行
$ ps ax | grep "named"