码迷,mamicode.com
首页 > 系统相关 > 详细

Linux grep命令详解

时间:2019-08-15 10:56:22      阅读:78      评论:0      收藏:0      [点我收藏+]

标签:结合   nbsp   系统   情况下   区分   没有   系统默认   简单   相同   

grep命令详解

grep命令用于在文本中查找指定的字符串。可以把grep理解为字符查找工具,grep是一个可以利用正则表达式进行全局搜索的工具,并将搜索出来的行打印出来。当然,不使用正则表达式也可以使用grep,但是grep与正则结合在一起,功能会更加强大。

我们先来看一个简单的例子,认识一下grep,我们从一个文本文件中找出包含test字符串的行:

[root@localhost shell]# cat testgrep 
zsy test
zsythink

www.zsythink.net
TEST 123
Zsys articles
grep Grep
abc
abc123abc
123zsy123
[root@localhost shell]# grep "test" testgrep 
zsy test

上例中表示使用grep命令,在文件中搜索包含"test"字符串的行。并将包含"test"字符串的行打印出来。于是,文件的第一行被打印出来,默认情况下,grep是区分大小写的,所有TEST没有被打印。

如果我们在搜索字符串的时候,想要不区分大小写,可以通过使用 -i 参数,即可在搜索时不区分大小写,示例如下:

[root@localhost shell]# grep -i "test" testgrep 
zsy test
TEST 123

由于testgrep文件行数较少,所有可以数过来时第一行和第五行包含test字符串,但是如果文件很大,成千上万行。想要指定文本哪行包含test字符串,我们可以使用 -n 参数。表示显示打印出的行在文本中的行号:

[root@localhost shell]# grep -i -n "test" testgrep 
1:zsy test
5:TEST 123

在centos6系统中,我们使用grep在文本中搜索的行被打印出来,但是匹配到的关键字没有以高亮度显示,如果我们想要高亮度显示匹配到的关键字。我们可以使用 --color选项,使用 --color 和使用 --color=auto的效果相同。在centos7中,系统默认为grep命令配置了别名,不用显式指定 --color 选项。默认高亮显示被匹配到的关键字,可以通过alais命令查看别名:

[root@localhost shell]# alias
alias cp=cp -i
alias egrep=egrep --color=auto
alias fgrep=fgrep --color=auto
alias grep=grep --color=auto
alias l.=ls -d .* --color=auto
alias ll=ls -l --color=auto
alias ls=ls --color=auto
alias mv=mv -i
alias rm=rm -i

 

Linux grep命令详解

标签:结合   nbsp   系统   情况下   区分   没有   系统默认   简单   相同   

原文地址:https://www.cnblogs.com/jkin/p/11356510.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!