grep 或 匹配_IT运维基础篇,原来grep有这么多用法,你知道有几个?

1、grep -n 显示行号

grep -n 'device' anaconda-ks.cfg 
57c7854caa2b0eef64e13c2fce96d46b.png

可以用vi打开此文件,然后输入【:set nu】回车验证下,记得前面有个冒号!

a8db1590a67e337b48e6e817c43e6c32.png

2、grep -o 只显示匹配到的内容

grep -o 'device' anaconda-ks.cfg
919cf2f9549a2150e59853d80b2f15f4.png

3、grep -i 不区分大小写

grep -i 'DEVICE' anaconda-ks.cfg
49500dbe158764d3a3c39d983de22a3b.png

4、grep -e 支持正则表达式

grep -e 'device*' anaconda-ks.cfg
02a93c7273d8120550e7f92ef84af58a.png

常见的正则有以下几个:

  • ^ 行首
  • $行尾
  • .除了换行符以外的任意单个字符
  • *前导字符的零个或多个
  • .*所有字符
  • []字符组内的任一字符,如:[a-z]
  • [a-z] 小写字母
  • [A-Z] 大写字母
  • [0-9] 数字

5、grep -A N 如果匹配成功,则输出匹配到的内容及其后面的N行内容

grep -A 2 'device=[a-z]+[0-9]+' anaconda-ks.cfg
9f86a082cd6e813b5c66d321f596a76d.png

6、grep -B N 如果匹配成功,则输出匹配到的内容及其前面的N行内容

grep -B 2 'device=[a-z]+[0-9]+' anaconda-ks.cfg
c4b94e711d8d9310dcb7f2f372a79581.png

注:-B参数跟-A参数正好相好,在实现工作中经常用到。

7、grep -C N 如果匹配成功,则输出匹配到的行,以及这行前后N行的内容

grep -C 2 'device=[a-z]+[0-9]+' anaconda-ks.cfg
79caa43d0599d01df1f394451063f902.png

8、-E :等于egrep,扩展

9、-v :取反,不匹配

10、-w:匹配单词

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值