一、简介
通用正则表达式解析器(grep,General Regular Expression Parser),打印符合某个特征的行。类似的命令还有egrep, fgrep, rgrep,这里只简单介绍一下常用的grep,语法:
grep [option] PATTERN [FILES]
一共有三个参数,分别是选项、模式和文件。option可以出现在命令后的任意位置,毕竟有-
标识。
grep默认支持通配符。正则表达式就是一些字符是有特殊含义的,和其他语言一样,如果你要去除特殊含义请使用\
。一般情况下,脚本文件(shell)中的参数以空白字符分隔(空格 制表和换行),如果你想要在参数中加上一个或者多个空白字符,那么你需要给参数加上引号。
还有一些常用的字符集合被前人归纳成下表
集合含义[:alpha:]字母[:digit:]数字[:ascii:]ASCII字符[:alnum:]字母或数字[:blank:]空格、制表[::cntrl:]ASSII控制字符[:graph:]非控制、非空格[:lower:]小写字母[:upper:]小写字母[:print:]可打印[:punct:]标点符号[:xdigit:]十六进制数字如果这还不能满足你的筛选需求,你可以使用-E
选项,让grep启用扩展表达式:
grep命令常常与其他命令结合,该命令是管道的一个非常好的实践。
- 找进程 ps -ef|grep java
- 数进程 ps -ef|grep -c java
- 找文件中的关键字 grep ‘linux’ test.txt test2.txt