首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Linux命令-grep命令基本用法

Linux基本命令

grep命令常见用法

grep命令可以说是Linux下面最常用的文本处理工具了,那么究竟我们可以用grep命令做什么了?首先我们想一想在windows下是我们是如何在整个文本中寻找我们所需的内容的,比如说我想在grep.txt文档中寻找字符串"hello",肯定不是一行一行用眼睛去扫描,我们只需要打开该文件,使用快捷键Ctrl+F然后在弹出的小框中输入我们要查的”hello”,就能迅速的定位到”hello”字符串了。好了,现在我们可以说说grep了,其实很简单,它的功能和前面所讲windows下的组合键Ctrl+F类似,都是方便我们用来搜索文本的。

Java

既然grep这么有用,那么我们现在一起来学习它,首先准备一个测试文件用来说明grep的用法,如下图所示,各位看官就不要纠结文件内容,内容没有任何意义,纯属只是用来验证grep用法的。

Java

Linux下基本上每个命令都有很多参数,grep也不例外,不要求每个参数都了如指掌,我们只需掌握几个常见的参数就足够应付日常工作所需了,现在一起来看看grep究竟有哪些参数以及这些参数的用途。

1不参数

grep最简单的用法就是不加任何参数,比如说,我们想要在grep.txt文件中找到含有字符串"hello"的所有行,那么我们可以

Java

2-n

-n参数可以让你在显示所匹配到的内容时同时显示行号,还是在grep.txt文件中找到含有字符串"hello"的所有行 ,这次我们加了-nc参数,看看和上面的输出有什么不同

Java

Java

3-i

可以使用-i选项在匹配时忽略大小写,比如说

Java

4--color

看看上面的输出,还是觉得有点不太爽,输出都是白色字体,我们要找的hello到底在一行的什么位置还是需要我们用眼睛费力的去看,其实,grep提供了一个参数完全可以解放我们这种不必要的劳力,就是--color 参数,不过需要注意的一点是,这是个长选项参数,Linux命令的参数分为长选项参数 和短选项参数,长选项参数前是2个-。好了,还是用上面的文件做个测试看看。

Java

5-o

在前面的实例中,包含匹配词的行整行都会被打印出来,但是有时候我们并不需要整行打印,只是想看到被匹配的关键词,这时候就需要用到-o 选项了,如下所示。

Java

6-A / -B / -C

某些情况下,我们不仅需要显示关键词匹配的行,还需要显示所匹配行的前后行信息,这时候就需要用到-A/-B/-C这三个参数了,

其中: -A n(n是一个整数)--->表示将匹配行的后n行也显示

-B n(n是一个整数)--->表示将匹配行的前n行页显示

-C n(n是一个整数)--->表示将匹配行的后n行也显示

看的有点晕?没关系,看看下面的例子就明白了。为了方便阅读,将测试所需的文件内容在此处再贴出来。

Java

Java

7-v

有时候我们需要反向查找,也就是说,查找的行是不含所给出的匹配词的,-v参数就是实现这个功能的,还是看例子:找出grep.txt文件中不含"hello"的行

Java

总结

上面的用法是grep最常见的用法,grep还有很多参数,我们在用到的时候上网查资料会用即可。此外,grep还支持正则表达式,grep和正则表达式结合起来才能发挥它最大的威力,这个后面会用几篇文章讲述,此处不再阐述。

Java

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180109A0QQMK00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券