grep命令:grep(global search regular expression(RE) and print out the line,全面搜索正则表达式并把行打印出来)是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来;grep搜索的结果被送到屏幕,不影响原文件内容。Unix的grep家族包括grep、egrep和fgrep。egrep表示扩展的grep,相比grep支持更多的元字符,"grep -E"相当于egrep;fgrep不支持元字符,但是搜索速度更快。
用法: grep [OPTIONS] PATTERN [FILE…]
grep [OPTIONS] [-e PATTERN | -f FILE] [FILE…]
常用选项:
-v:显示不能被pattern匹配到的行
例如:不显示/etc/fstab文件的注释信息:
~]# grep -v "^#" /etc/fstab UUID=a87091f4-347b-41da-9983-a8f193e1206e / ext4 defaults 1 1 UUID=d0bb97dd-0370-4e9f-bb38-ecf580b2761c /boot ext4 defaults 1 2 UUID=77fc1474-4b1d-4e28-be0a-e81dd21bef19 swap swap default
-i:忽略字符大小写
-n:显示匹配行号
-c:统计匹配行数
-o:仅显示匹配到的字符串
例如:查找/etc/fstab文件中的“defaults”关键字
~]# grep -o "defaults" /etc/fstab defaults defaults defaults defaults defaults defaults
-A NUM:显示后NUM行
例如:显示匹配到“ext4”的后两行
~]# grep -n -A2 "ext4" /etc/fstab 9:UUID=a87091f4-347b-41da-9983-a8f193e1206e / ext4 defaults 1 1 10:UUID=d0bb97dd-0370-4e9f-bb38-ecf580b2761c /boot ext4 defaults 1 2 11-UUID=77fc1474-4b1d-4e28-be0a-e81dd21bef19 swap swap defaults 0 0 12-tmpfs /dev/shm tmpfs defaults 0 0
-B NUM:显示前NUM行
-C NUM:前后各NUM行
例如:显示匹配到“ext4”的前后各一行
~]# grep -n -C1 "ext4" /etc/fstab 8-# 9:UUID=a87091f4-347b-41da-9983-a8f193e1206e / ext4 defaults 1 1 10:UUID=d0bb97dd-0370-4e9f-bb38-ecf580b2761c /boot ext4 defaults 1 2 11-UUID=77fc1474-4b1d-4e28-be0a-e81dd21bef19 swap swap defaults 0 0
-q:不显示任何信息
-w:显示匹配到字符串的行
例如:查找/etc/fstab文件中有“defaults”关键字的行
~]# grep -w "defaults" /etc/fstab UUID=a87091f4-347b-41da-9983-a8f193e1206e / ext4 defaults 1 1 UUID=d0bb97dd-0370-4e9f-bb38-ecf580b2761c /boot ext4 defaults 1 2 UUID=77fc1474-4b1d-4e28-be0a-e81dd21bef19 swap swap defaults 0 0 tmpfs /dev/shm tmpfs defaults 0 0 sysfs /sys sysfs defaults 0 0 proc /proc proc defaults 0 0
-e:实现多个选项的逻辑“或”关系
例如:在/etc/fstab文件中查找“ext4”或者“swap”关键字
~]# grep -e "ext4" -e "swap" /etc/fstab UUID=a87091f4-347b-41da-9983-a8f193e1206e / ext4 defaults 1 1 UUID=d0bb97dd-0370-4e9f-bb38-ecf580b2761c /boot ext4 defaults 1 2 UUID=77fc1474-4b1d-4e28-be0a-e81dd21bef19 swap swap defaults 0 0
-E:使用扩展正则表达式,相当于egrep
原创文章,作者:yilianrenzhendemenbi,如若转载,请注明出处:http://www.178linux.com/30792