Linux脚本攻略学习笔记11

我们已经看过了grep命令的基本用法。不过grep的本事可不止如此,他还有更多的特性。

(1):递归搜索文件

如果需要在多级目录中对文本进行递归搜索,可以使用;

grep "text"  . -R -n

(2):忽略样式中的大小写

选项-i 可以使匹配样式不考虑字符的大小写,例如:

$echo hello world | grep -i "HELLO"
hello


(3):用grep 匹配多个样式

在进行匹配的时候通常至指定一个样式。然而,我们可以用选项 -e来指定多个匹配样式:

$ grep -e "pattern1" -e "pattern2"

例如:


(4)在grep搜索中指定或排除文件

grep 在搜索过程中指定(include)或排除(exclude)某些文件。我们通过通配符来制定所include或者exclude的文件

$grep "main()" . -r --include *.{c,cpp}
在搜索中排除所有的README文件:

$grep "main()" . -r --exclude "README"
如果需要排除目录,可以使用"--exclude-dir"选项。

(6)静默输出 

有时候,我们并不打算查看匹配的字符串,而只是想知道是否能够成功匹配。这可以通过设置grep的静默选项(-q)来实现。在静默模式中,grep命令不会输出任何内容。他仅是运行命令,然后根据命令执行成功与否返回退出状态。

来看一个脚本


这个脚本的用途就是测试文件时候包含测试的内容。

(7)打印出匹配文本之前或者之后的行。

如要打印匹配结果之后的3行,使用-A选项:

$seq 10 | grep 5 -A 3


要打印匹配某个结果之前的3行,使用-B选项:



要打印匹配某个结果之前以及之后的3行,使用-C选项:








评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值