良许Linux教程网 干货合集 Linux grep基础入门

Linux grep基础入门

grep 指令用于查找内容包含指定的范本样式的文件,如果发现某文件的内容符合所指定的范本样式,预设 grep 指令会把含有范本样式的那一列显示出来。若不指定任何文件名称,或是所给予的文件名为 ,则 grep 指令会从标准输入设备读取数据。

image-20211121220314074

基本介绍

grep命令由选项、模式和文件三部分组成,它在一个或多个文件中搜索满足模式的文本行,模式后的所有字符串被看做文件名,文件名可以有多个, 支持通配符写法,搜索的结果被打印到屏幕,不影响原文件的内容。grep命令的选项用于对搜索过程进行补充说明,grep命令的选项及其意义如下表所示。

选项 功能
-i 忽略大小写
-w 匹配单独完整的单词
-I 仅列出符合匹配的文件,而不列出行
-r 递归匹配
-n 列出行并显示行号
-v 反向匹配
-c 显示匹配行数,不显示内容
-f file 从文件file中提取模板作为匹配模式
-E 使用扩展正则表达式
-F 快速匹配,不使用正则表达式
-A n 打印匹配行及其后n行
-B n 打印匹配行及其前n行
-C n 打印匹配行及其前后n行
-o 只显示匹配到的内容
-q 不输出内容,以退出状态表示搜索结果

正则表达式

将带元字符的正则表达式用于grep命令能够更灵活地匹配信息,使用时需要使用单引号将正则表达式引起来,以免发生一些不可预知的错误。

模式 功能
'^h' 查找以h符号开头的行
'^$' 匹配空白行
'^/.../' 匹配以中间含有三个字符的斜线对开头的行
'^/.*/' 匹配以斜线对开头的行,里面可以有任何内容
[:alpha:] 匹配字符
[:digit:] 匹配数字
[:alnum:] 匹配字符或数字
[:word:] 匹配单词字符

实例

  • 统计/etc/init.d/functions文件中每个单词出现的次数并排序
grep -Eo '[[:alnum:]_]+' /etc/init.d/functions | sort | uniq -c | sort -nr
  • 查找两个文件中重复的行
$ cat test1
aa
bb
cc
ddd
eee
$ cat test2
aa
bb
ccc
dd
eee
$ grep -wf test1 test2
aa
bb
eee

以上就是良许教程网为各位朋友分享的Linu系统相关内容。想要了解更多Linux相关知识记得关注公众号“良许Linux”,或扫描下方二维码进行关注,更多干货等着你 !

img
本文由 良许Linux教程网 发布,可自由转载、引用,但需署名作者且注明文章出处。如转载至微信公众号,请在文末添加作者公众号二维码。
良许

作者: 良许

良许,世界500强企业Linux开发工程师,公众号【良许Linux】的作者,全网拥有超30W粉丝。个人标签:创业者,CSDN学院讲师,副业达人,流量玩家,摄影爱好者。
上一篇
下一篇

发表评论

邮箱地址不会被公开。 必填项已用*标注

联系我们

联系我们

公众号:良许Linux

在线咨询: QQ交谈

邮箱: yychuyu@163.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

关注微博
返回顶部