Grep命令详解

Linux文本处理三剑客

- grep 文本过滤工具
- sed 文本编辑工具 stream editor
- awk 文本报告生成工具

定义

文本搜索工具,能够使用正则表达式搜索文本,并将输出匹配到的

用法

grep [options] '搜索的字符串' filename

    -c:只输出匹配字符串行的计数,不输出匹配到的内容行
    -n:在输出匹配字符串行的同时输出当前的行数
    -i:忽略大小写
    -v:反向选择
    -V:显示版本信息
    -o:只显示正则表达式匹配到的部分
    -s:不显示不存在或者无法读取文件的错误信息
    -q:静默模式,不输出任何消息
    -A #:after 连带显示后#行
    -B #:before 连带显示前#行
    -C #:context 前后各#行
    --color-auto:将匹配到的关键字部分加以颜色标识
-----------------------------------------------------------------------------
#### 基本正则表达式元字符
##### 字符匹配
    . 匹配任意单个字符
    [] 匹配指定范围内任意单个字符
    [^] 匹配指定范围外的任意单个字符
##### 匹配次数
    * 匹配前面的字符任意次数
    .* 匹配任意长度的任意字符
    \? 匹配前面的字符0次或1次
    \+ 匹配前面的字符至少1次
    \{m\} 匹配前面的字符m次
    \{n,m\} 匹配前面的字符至少n次,最多m次
##### 位置锚定
    ^ 行首锚定 位于模式的最左侧
    $ 行尾锚定 位于模式的最右侧
    \< | \b 词首锚定 位于单词的左侧
    \> | \b 词尾锚定 位于单词的右侧
    \<pattern\> 匹配整个单词
##### 分组锚定
    \(\) 将一个或多个字符捆绑在一起,当做一个整体处理
> 分组括号中的模式匹配到的内容会被正则表达式引擎记录在内部变量中,这些变量的命名方式为:\1,\2,\3,……
    后向引用 引用前面分组括号中的模式所匹配字符

< 待更新

posted on 2018-12-13 01:40  North-北  阅读(121)  评论(0)    收藏  举报

导航