zoukankan      html  css  js  c++  java
  • Linux之grep命令

    global search regular expression(RE) and print out the line

    一、命令形式

    1. grep -n --color=auto 'str' filename/dirname
    2. cat filename | grep ……
    3. grep -E '(str)+.?[0-9a-zA-Z]..str.*'
    4. egrep 'str1|str2'
    5. grep -F '*' ……
    6. fgrep '*' ……
    

    二、示例

    1. grep 参数

    * -n 行号
    * --color=auto 结果颜色高亮显示,一般在alias中定义即可
    * -c 对结果行计数
    * -i 不区分大小写
    * -v 反向搜索
    * -m3 匹配行数达到3行后停止匹配 
    * -A1 同时打印搜索结果行的后一行
    * -B3 同时打印搜索结果行的前三行
    * -r 递归查找(搜索区域是dirname时)
    * -l 只显示含搜索结果的文件路径和名称(搜索区域是dirname时)
    * -E 扩展正则表达式
    * -F 纯字符搜索
    

    2. 正则表达式(grep未扩展)

    2.1 单个字符匹配[]

    1. 't[ae]st' 可匹配taste和test(在t和st之间存在a或者e,而不是ae)
    2. 't[a-z]st' 在t和st之间存在一个小写字母
    3. 't[a-zA-Z0-9]st' 在t和st之间存在一个大小写字母或数字
    

    2.2 行首匹配^

    2.3 行尾匹配$

    2.4 反向匹配[^]

    1. '[^g]oo' 含有oo,且oo前没有紧随字符g;
        google不行,gooogle可以(goo不符合,但是ooo符合)
    2. 'oo[^g]' 含有oo, 且oo后没有紧跟字符g;
    3. '3[^0-9]8' 数字3和数字8之间,没有其他数字
    4. '^[^#].$' 不以'#'开头,且以点号结尾(点号转义)
    

    2.5 任意单字符.

    1. 'g..le' g和le之间有两个任意字符,如google
    

    2.6 重复字符*

    1. 'go.*le' g和le之间有0到n个字符o,如gle、gole、goole
    2. 'goo.*le' gle就不符合啦,起码得是gole
    3. 'g[a-z].*g' g和g之间有0到n个任意小写字母
    

    2.7 限定字符连续个数{},正则扩展,grep中需要转义

    1. 'go{2}le' g和le之间的字符o必须重复2次,如goole
    2. 'go{2,3}le' 重复2到3次
    3. 'go{2,}le'  重复2到n次
    

    2.8 字符在同一行出现1到n次,正则扩展,grep需要转义

    '360+' 匹配存在1个或者多个360的行
    '(google)+' 同上
    

    2.9 字符出现0或1次,正则扩展,grep需转义

    'goo?le'  go和le之间存在一个o,或者不存在任何字符
    

    2.10 存在字符a或者字母b,正则扩展,grep需转义

    'google|gooogle'
    

    3. 正则扩展(grep -E,或者egrep)

    上面需要转义的四个,在这里不用转义啦

    1. 'go{3}le'
    2. '(google)+'
    3. 'goo?le'
    4. 'goole|gooole'
    

    4. 纯字符搜索(grep -F,或者fgrep)

    '*' 这里写啥就是啥,星号就是星号,没有任何特殊含义
    
  • 相关阅读:
    Win10安装系统后,提示initializing and establishing link无法启动系统
    CSVN使用入门
    CSVN(SVN)命令入门及使用过程中遇到的错误问题汇总
    CSVN部署安装,实现web管理svn
    xenserver使用快照创建虚拟机,提示eth0 has different mac错误
    开机或者安装系统时提示tsc: Fast TSC calibration failed解决方法
    Nginx——debug的使用
    nginx屏蔽某一ip的访问
    plsql快速入门
    Web02_HTML&CSS
  • 原文地址:https://www.cnblogs.com/jiukun/p/9325472.html
Copyright © 2011-2022 走看看