正则介绍_grep上,grep中,grep下

正则介绍_grep(上)

正则就是一串有规律的字符串

掌握好正则对于编写shell脚本有很大帮助

各种编程语言中都有正则,原理是一样的

本章将要学习grep/egrep、sed、awk (网页三剑客)

grep

# grep "nologin" passwd

//查看一个关键字有多少行

# grep -c "nologin" passwd

//显示行号

# grep -n "nologin" passwd

过滤出不区分大小写

# grep -ni "nologin" passwd

过滤不包含关键字的行

# grep -vni "nologin" passwd

遍历过来所有目录

# grep -rn "nologin" /etc/

-A 后面跟数字,过滤出符合要求的行以及下面n行

-B 同上,过滤出符合要求的行以及上面n行

-C 同上,同时过滤出符合要求的行以及上下各n行

grep(中)

显示包含root的行号

# grep -n 'root' /etc/passwd

显示不包含root的行号.

# grep -nv 'nologin' /etc/passwd

过滤出0-9中的任意个字符

# grep '[0-9]'/etc/inittab

过滤取饭出0-9中的任意个字符

# grep -v '[0-9]' /etc/inittab

过滤出已#号开头的行

# grep -n "^#" /etc/inittab

过滤出不已#开头的行

# grep -v '^#' /etc/inittabgrep -v '^#' /etc/inittab|grep -v  '^$'

过滤非a-zA-z开头的

#  grep '^[^a-zA-Z]' passwd

grep(下)

过滤包含r或者o的任意的一个字符

# grep 'r.o' test.txt

*表示*号前面的字符循环多次匹配,可以0次循环

#  grep 'oo*' passwd

匹配所有字符

# grep '.*' test.txt

匹配一个范围,特殊符号记得要脱衣

# grep 'o\{2\}' /etc/passwd

匹配一个范围,特殊符号记得要脱衣,其中grep -E 跟egrep是一样的

# grep -E 'o{2}' /etc/passwdegrep 'o{2}' /etc/passwd

过滤表示一次或者多次,+号从1开始

# egrep 'o+' /etc/passwd

匹配表示?前面的字符0次或者1次重复出现

# egrep 'oo?' /etc/passwd

匹配root或者nologin

# egrep 'root|nologin' /etc/passwd

匹配oo两次那么就是4个o

egrep'(oo){2}' /etc/passwd

把一个目录下,过滤所有*.php文档中含有eval的行

# grep -r --include="*.php" 'eval' /data/
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

主题模板站

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值