Grep 用法小结(grep搜索文件内容)

所属分类: 软件教程 / 经验技巧 阅读数: 1324
收藏 0 赞 0 分享

使用grep搜索文件内容——快捷、方便,一般都是linux下常用的工具,当然windows也有这个工具了,下载地址 https://www.jb51.net/softs/462279.html
 
1.作用

    grep命令可以指定文件中搜索特定的内容,并将含有这些内容的行标准输出。grep全称是Global Regular Expression Print,表示全局正则表达式版本,它的使用权限是所有用户。

2.格式
    grep [options]

基本格式

grep pattern [file...]
(1)grep 搜索字符串 [filename]
(2)grep 正则表达式 [filename]
在文件中搜索所有 pattern 出现的位置, pattern 既可以是要搜索的字符串,也可以是一个正则表达式.
注意:在输入要搜索的字符串时最好使用双引号/而在模式匹配使用正则表达式时,注意使用单引号
3.主要参数
[options]主要参数:
-c:只输出匹配行的计数。
-I:不区分大小写(只适用于单字符)。
-h:查询多文件时不显示文件名。
-l:查询多文件时只输出包含匹配字符的文件名。
-n:显示匹配行及行号。
-s:不显示不存在或无匹配文本的错误信息。
-v:显示不包含匹配文本的所有行。
注:有c 的时候n将失效
pattern正则表达式主要参数:正则表达式的应用 (注意:最好把正则表达式用单引号括起来)
\:忽略正则表达式中特殊字符的原有含义。
^:匹配正则表达式的开始行。
$: 匹配正则表达式的结束行。
<:从匹配正则表达式的行开始。
>:到匹配正则表达式的行结束。
[ ]:单个字符,如[A]即A符合要求 。
[ - ]:范围,如[A-Z],即A、B、C一直到Z都符合要求 。
。:所有的单个字符。
* :有字符,长度可以为0。

下面还有一些有意思的命令行参数:

grep -i pattern files :不区分大小写地搜索。默认情况区分大小写,
grep -l pattern files :只列出匹配的文件名,
grep -L pattern files :列出不匹配的文件名,
grep -w pattern files :只匹配整个单词,而不是字符串的一部分(如匹配’magic’,而不是’magical’),
grep -C number pattern files :匹配的上下文分别显示[number]行,
grep pattern1 | pattern2 files :显示匹配 pattern1 或 pattern2 的行,
grep pattern1 files | grep pattern2 :显示既匹配 pattern1 又匹配 pattern2 的行。
grep -n pattern files  即可显示行号信息
grep -c pattern files  即可查找总行数

正则表达式是Linux/Unix系统中非常重要的概念。正则表达式(也称为“regex”或“regexp”)是一个可以描述一类字符串的模式(Pattern)。如果一个字符串可以用某个正则表达式来描述,我们就说这个字符和该正则表达式匹配(Match)。这和DOS中用户可以使用通配符“*”代表任意字符类似。在Linux系统上,正则表达式通常被用来查找文本的模式,以及对文本执行“搜索-替换”操作和其它功能。

1、grep 搜索字符串 [filename]
 
使用以下文本创建一个名为 grep.txt 的文件:
I like golf.
Golf is played on grass.
I created gilf.
 
1、在 grep.txt 文件中搜索字符串 golf 的所有实例,并输出包含该字符串的行
grep golf grep.txt
I like golf.
grep -n "golf" grep.txt
1:I like golf.
 
2、grep 正则表达式 [filename]
grep -n '[gG]olf' grep.txt
1:I like golf.
2:Golf is played on grass.

更多精彩内容其他人还在看

12306双向核验该怎么做?电脑手机端双向验证的详细教程

12306双向核验该怎么做?现在使用12306购买火车票需要双效验证,之前我们也发过12306双向验证的教程,今天这篇文章是12306双向验证手机验证和电脑验证最全版本,需要的朋友可以参考下
收藏 0 赞 0 分享

航天纪念币/纪念钞开启预约 10元硬币100元钞票(内附预约地址)

26日,将法相中国航天普通纪念币一枚(10元)、中国航天纪念钞一张(100元),现在已经开始预约,本文内容附预约地址,喜欢收集的朋友可以进来直接预约,本次预约以后,将于12月14-16号发行
收藏 0 赞 0 分享

12306再放大招 新用户注册需要手机双向验证

之前注册的朋友都知道,注册12306很方便,但是,今天起注册12306的新用户需要进行手机双向验证,为什么要这么麻烦呢?这一新举措为新用户注册增加了一道步骤,但可以有效防止用户身份信息被抢注,如果被抢注册也可以完美解决,详细内容请看下文
收藏 0 赞 0 分享

怎么通过网络银行在线预定中国航天纪念币(25日截止)?

怎么通过网络银行在线预定中国航天纪念币?昨天中国人民银行发型了中国航天纪念币,从11月10日预订到11月25日截止预订,但是很多朋友不知道该怎么预订,下面分享预订航天纪念币的图文教程,和预订连接,需要的朋友可以参考下
收藏 0 赞 0 分享

2015年新版百度地图怎么查询地方坐标? 百度地图拾取坐标的方法

2015年新版百度地图怎么查询地方坐标?百度地图最近刚刚改版了,改版以后最大的改变就是查询坐标的位置改变了,该怎么拾取坐标呢?下面分享2015年最先百度地图的使用方法
收藏 0 赞 0 分享

百度地图中怎么同时标注多个地点?

百度地图中怎么同时标注多个地点?旅游的时候使用百度地图查看了几个想去的旅游景点,想标注起来,这样就能方便的找到自己想去的位置,但是怎么同时标注多个地方呢?下面我们看看百度地图地方标注的使用方法
收藏 0 赞 0 分享

搜狗输入法怎样换行? 搜狗输入法文字换行的技巧

搜狗输入法怎样换行?现在很多人使用搜狗输入法输入文字,文字怎么换行呢?下面我们就来看看搜狗输入法文字换行的技巧
收藏 0 赞 0 分享

百度图片打不开怎么回事?百度图片打不开解决方法

百度图片打不开怎么回事?很多网友在查找图片时突然打不开百度图片,却又不知道怎么解决,其实解决方法很简单的,下面小编就为大家介绍百度图片打不开方法,来看看吧
收藏 0 赞 0 分享

iTunes连接失败显示未知错误0xE8000084的详细解决办法

iTunes发生未知错误0xE8000084怎么办?iTunes最新版本连接iPhone6,结果没有反应,连接失败,并且弹出提示窗口: “iTunes发生未知错误0xE8000084”,下面分享这个问题的解决办法,需要的朋友可以参考下
收藏 0 赞 0 分享

百度怎么使用财富值换取百度砖礼品?

百度怎么使用财富值换取百度砖礼品?百度砖就是印有百度logo标注的2块有机玻璃制作组合而成的物品,是百度的一种奖品,用百度财富值就可以换取,下面分享详细的换取教程,需要的朋友可以参考下
收藏 0 赞 0 分享
查看更多