grep
1、grep grep是g一种查找过滤工具,grep支持正则表达式 2、正则表达式 规定一些特殊语法表示字符类、数量限定符和位置关系,然后用这些特殊语法和普通字符一起表示 一个模式,这就是正则表达式。 形式:' 表达式内容 ' 1)字符类 . 匹配任意字符的一次出现 [] 匹配括号中的任意字符的一次出现 - 在[]内表示字符范围 ^ 例如:[^xy] 匹配除括号内字符之外的任意字符的一次出现 [[:digit:]] 匹配一个数字 [[:alpha:]] 匹配一个字母 2)数量限定符 ? 紧跟在它前面的单元匹配零次或一次 +紧跟在它前面的单元匹配一次或多次 *紧跟在它前面的单元匹配零次或多次 {N}紧跟在它前面的单元匹配N次 {N,}紧跟在它前面的单元匹配至少N次 {N,M}紧跟在它前面的单元匹配至少N次,最多M次 3)位置限定符 ^ 匹配行首的位置 $ 匹配行尾的位置 &; 匹配单词开头的位置 &; 匹配单词结尾的位置 b 匹配单词开头或结尾的位置 B 匹配不是单词开头或结尾的位置 4)特殊字符 ? + {} | () 这些字符在扩展正则和基准正则有不同的含义,在基准正则中代表普通字符,想要使用其特殊含义需要转义字符转义;在扩展正则中代表特殊含义字符,想要使用其普通含义需要转义字符转义。 例如:匹配合法的手机号码 解析命令 3、grep选项 --colour 高亮显示 -l 查询多文件时只输出包含匹配字符的文件名 -L 打印不匹配模板的文件清单 -n 显示匹配行及行号 -s 不显示不存在或无匹配文本的错误信息 -? 同时显示匹配行上下的?行,如:grep -2 pattern filename同时显示匹配行的上下2行 -c 只打印匹配的行数,不显示匹配的内容 -h 当搜索多个文件时,不显示匹配文件名前缀 -i 忽略大小写差别 -o 只显示正则表达式匹配的部分 -q 取消显示,只返回退出状态。0则表示找到了匹配的行 -v 反检索,只显示不匹配的行 -w 如果被&;和&;引用,就把表达式做为一个单词搜索 -R,-r,递归的读取目录下的所有文件,包括子目录。 比如grep -R 'pattern' test会在 test 及其子目录下的所有文件中,匹配 pattern -V 显示软件版本信息 4、grep与egrep egrep命令等同于grep-E,利用此命令可以使用扩展的正则表达式对文本进行搜索,并把符合用户需求的字符串打印出来。 5、grep与fgrep fgrep命令等同于grep-F,它利用固定的字符串来对文本进行搜索,但不支持正则表达式的引用,所以此命令的执行速度也最快。(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |