Linux: grep命令及用法说明

一、几种grep指令的区别

1.grep

Global Regular Expressions Print
全局正则表达式打印

标准grep命令如下所示:

grep <flags>  ' <regular expression>' <filename>

grep 支持的是基本正则表达式, + , ?, |, (,)看成基本字符,不是正则表达式的元字符
如果想用成元字符,需要转义

2.egrep

Extended Global Regular Expressions Print
扩展正则表达式打印
egrep支持扩展正则表达式(ERE), 与 grep -E 功能相同
+ , ?, |, (,)在egrep中是正则表达式的元字符

3.fgrep

Fixed-string Global Regular Expressions Print
fgrep 与 grep -F 功能相同, 不会将任何表达式识别为特殊字符,搜索可以更快,它只处理简单字符串

4.pgrep

Process-ID Global Regular Expressions Print
用来查看当前正在运行的进程,将与条件匹配的进程ID列在屏幕上,可以用来方便地查找PID。

[root@vm1 ~]# pgrep nginx
71982
71984

-l参数会返回进程ID同时显示进程名,如 pgrep -l nginx

二、grep 命令格式及基本用法

grep [-acinv] [–color=auto] ‘搜寻字符串’ filename 选项与参数:
-a :将 binary 文件以 text 文件的方式搜寻数据
-E :开启扩展(Extend)的正则表达式。
-i :忽略大小写(ignore case)。
-v :反过来(invert),只打印没有匹配的,而匹配的反而不打印。
-n :显示行号
-w :被匹配的文本只能是单词,而不能是单词中的某一部分,如文本中有liker,而我搜寻的只是like,就可以使用-w选项来避免匹配liker
-c :显示总共有多少行被匹配到了,而不是显示被匹配到的内容,注意如果同时使用-cv选项是显示有多少行没有被匹配到。
-o :只显示被模式匹配到的字符串
–color :将匹配到的内容以颜色高亮显示。

-A n:显示匹配到的字符串所在的行及其后n行,after
-B n:显示匹配到的字符串所在的行及其前n行,before
-C n:显示匹配到的字符串所在的行及其前后各n行,context

grep 可以用管道连接符,将前级的输出作为grep的输入
1.不加参数的用法
在这里插入图片描述
2. cat grep.txt | grep -n "hello " 显示行号
3. cat grep.txt | grep -n -i --color "hello" 加上颜色显示
Linux 的命令行参数分为长选项参数 和短选项参数,长选项参数前是2个-
4. cat grep.txt | grep -A 2 --color "HELLO "

三、grep 指令的多样化实例应用

待补充积累
1.正则表达式
2.与sed 搭配来完成替换

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值