grep命令

本文详细介绍了grep命令的各种选项及其使用方法,包括如何查找指定字符串、显示匹配行前后的内容等。此外还提供了几个实用的grep命令示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

经常简单用法:

grep "xxx" -inr .  #查找当前目录以及子目录文件中xxx不区分大小写字符串

ls | egrep -v "file-a|file-b|dir-a" | xargs rm -rf   #删除当前目录除文件a文件b目录a的所有文件以及目录

ps -ef|grep xxxxx| grep -v grep   #显示xxxxx进程

现在把grep详细选项列出方便以后查看:

grep :

  grep [options] PATTERN FILE...

  PATTERN由元字符和和普通字符组成

  -i : --ignore-case , 忽略大小写

  -o : --only-matching, 只显示所匹配到的字符,二不是整行

  -n : --line-number, 输出所匹配行的行号

  -v : --invert-match, 显示除匹配行外的所有行

  -E : --extended-regexp, egrep

  -F : --fixed-strings, fgrep

  -P : --per-regexp

  -A NUM : --after-context, 显示匹配行后NUM行

  -B NUM: --before-context,显示匹配行强NUM行

  -C NUM: --context,显示匹配行前、后NUM行

  元字符

    匹配字符:

      . : 匹配任意单个字符

      [],[^] : 匹配指定的单个字符

        [0-9], [[:digit:]] : 匹配单个数字

        [[:alpha:]] : 匹配单个大、小写字母

        [[:lower:]] : 匹配单个小写字母

        [[:upper:]] : 匹配单个大写字母

        [[:alnum:]] : 匹配单个数字或字母

        [[:bank:]] : 匹配单个空白字符

        [[:punct:]] : 匹配标点符号

        [[:contrl:]] : 匹配当控制字符

        [[:xdigit:]] : 匹配单个16进制数

    匹配次数:用来指定前面的字符出现的次数

      * : 任意次数,包括0次

      \+ : 至少一次

      \? : 0次或1次,前面的字符可有,可无

      \{m\}, \{0,n\}, \{m,n\}, \{m,\} : 分别指m次,最多n次,m-n次,最少m次

      .* : 任意长度,任意字符

    位置锚定:

      ^ : 行首锚定,模式左侧

      $ : 行尾锚定,模式右侧

      \< : 词首锚定,单词模式左侧,单词指由数字和字母构成的字符串

      \> : 词尾锚定,单词右侧

        ^PATTERN$, 匹配整行只有指定的模式

        ^$ : 空行

        ^[[:blank:]]$ : 整行无可见字符

        \<word\> : 匹配整个单词

    分组

       将任意个字符用括号括起来做一个整体进行匹配

      后向引用:应用前面分组括号所匹配的内容,非模式本身, \1,\2 ...

        th.*\1 : 匹配第一个括号所匹配的内容


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值