grep命令 linux

grep(global regular expression print,全局正则表达式打印,g代表global,re代表正则表达式,p代表print)。 
grep工具能够使用正则表达式,在一个或者多个文件中搜索,确定是否包含给定的字符串,并将匹配的行打印出来。该程序只显示包含所查找的字符串的文件行,不修改搜索到的文件。

grep格式

grep [options] pattern [file-list]

其中pattern可以是一个简单的字符串,也可以是另一种形式的正则表达式。 
grep根据指定的options选项,采取不同的动作,查找包含与pattern匹配的字符串的行。

options选项

不带任何选项的grep把找到的包含匹配pattern的行发送到标准输出。当在命令行上指定多个文件时,grep将在显示的每行前带上文件名和冒号。

选项

-c          --count             只显示每个文件中包含匹配模式的行数-C n        --context=n         对匹配的每一行显示n行上下文-I      --ignore-case   使得正则表达式中的小写字母可以匹配文件中的大写-m n        --max-count=n   显示包含匹配模式的n行后停止读取输入-n      --line-number   在每行前显示行号,文件不必包含行号-v      --invert-match  显示不包含匹配模式的行-h      --no-filename   当搜索多个文件时,在每行的开始不显示文件名-r      --recursive     递归的搜索file-list中的目录,处理目录中的文件-i      --files-with-matches        仅显示包含一个或多个匹配模式的文件名,每个文件名只显示一次,即使包含多个匹配也不例外
-f file --file=file     读取文件file,该文件中每一行都包含一个模式,从输入中查找匹配每个模式的行
-s      --no-message        如果file-list中文件不存在或不可读,不显示错误信息-x      --line-regexp   pattern仅匹配整行-w      --word-regexp   使用该选项,pattern必须与整个字匹配。当要搜索某个字是文件中另一个字的子串时有用

pattern中常用选项

\       忽略正则表达式中特殊字符的原有含义。
^       匹配正则表达式的开始行。
$       匹配正则表达式的结束行。
\<      从匹配正则表达 式的行开始。
\>      到匹配正则表达式的行结束。
[ ]     单个字符,如[A]即A符合要求 。
[ - ]   范围,如[A-Z],即A、B、C一直到Z都符合要求 。
.       所有的单个字符。
*       有字符,长度可以为0

举例

grep "^+" tem.log | grep -v "^+++"

把tem.log文件中开头包含+并且不包含+++的挑选出来

grep "sort" *.doc       #见文件名的匹配

多个文件查询

grep -c "48" data.doc   #输出文档中含有48字符的行数

行匹配:输出匹配行的计数

grep -n "48" data.doc       #显示所有匹配48的行和行号

显示匹配行和行数

grep -vn "48" data.doc      #输出所有不包含48的行

显示非匹配的行

grep -vn "48" data.doc      #输出所有不包含48的行

显示非匹配的行

grep -i "ab" data.doc       #输出所有含有ab或Ab的字符串的行

大小写敏感

grep命令 linux相关推荐

  1. grep命令---Linux学习笔记

    介绍: Linux系统中grep命令是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹 配的行打印出来.grep全称是Global Regular Expression Print,表示全局 ...

  2. linux命令 ll 搜索_Linux grep 命令

    Linux grep 命令 Linux grep 命令用于查找文件里符合条件的字符串. grep 指令用于查找内容包含指定的范本样式的文件,如果发现某文件的内容符合所指定的范本样式,预设 grep 指 ...

  3. Linux之grep命令与正则表达式

    文章目录 grep命令 知识储备 正则表达式 1. 正则表达式的分类 1. 普通正则表达式 2. 拓展正则 案例 grep命令 Linux三剑客之一,文本过滤器(根据文本内容过滤文件) 语法格式:gr ...

  4. shell命令三剑客之grep命令详解

    文章目录 1. 通配符(globbing) 2. grep 2.1 linux系统支持的三种形式的grep命令 3. 正则表达式 3.1 扩展正则表达式 4. IP的正则 4.1 ip地址的类别 4. ...

  5. 正则,grep命令详解

    正则表达式和grep.vim.awk.sed等的关系: 正则表达式是一种方法,相当于一种工艺,grep等命令相当于是一个具体的加工机器,机器在加工产品的时候,采用这种方法. 命令是怎么执行的: sel ...

  6. linux objdump命令,Linux objdump命令

    一.简介 objdump命令是用查看目标文件或者可执行的目标文件的构成的gcc工具. 二.选项 三.实例 1)显示文件头信息 objdump -f test 2)显示Section Header信息 ...

  7. Cat ,Grep命令

    日期:2019-12-9 1.Cat命令 cat 命令用于连接文件并打印到标准输出设备上. 1.1 语法格式 cat [-AbeEnstTuv] [--help] [--version] > f ...

  8. linux中的ul命令,linux lin命令

    ln是linux中又一个非常重要命令,它的功能是为某一个文件在另外一个位置建立一个同不的链接,这个命令最常用的参数是-s,具体用法是:ln –s 源文件 目标文件. 当我们需要在不同的目录,用到相同的 ...

  9. 练习使用 Linux 的 grep 命令

    grep 是一种用特定的字符模式来搜索文件中内容的方式.虽然需要一些练习,但学习 grep 命令还是很容易的.本文会介绍一些我认为 grep 最有用的功能. 来学习下搜索文件中内容的基本操作,然后下载 ...

最新文章

  1. 一位铁粉的分享:阿里面试归来总结面经,已成功斩获P6 offer...
  2. 黑马程序员python笔记_#华为云·寻找黑马程序员# 如何实现一个优雅的Python的Json序列化库...
  3. CentOS7桌面版系统使用的一些小技巧
  4. php抽奖概率算法(刮刮卡,大转盘)
  5. 高晓松卸任北京阿里巴巴音乐科技有限公司董事长
  6. HDU 3832 Earth Hour
  7. 英康手机订单系统APP使用说明
  8. [HTML/CSS]浮动的那点事儿
  9. 为什么C++开发不需要安装STL库
  10. 利用envi与arcmap/arcgisPro制作一张植被覆盖指数专题地图(地图学作业)
  11. cpuz测试分数天梯图_怎么看CPU性能排行 CPU天梯图2018年5月最新版 (全文)
  12. 港科百创 | 一清创新完成Pre-A+轮战略融资
  13. 基于锚点定位和overflow的选项卡
  14. 三星s8 android版本,三星S8有几个版本?三星S8和三星S8+(plus)各个版本详细区别对比评测...
  15. (转)格拉布斯准则(Grubbs Criterion)处理数据异常
  16. 关于如何排查vpn服务器无法转发的问题
  17. 连接MySQL实现增删改查的动态网页
  18. matlab——遗传算法中的选择,交叉,变异等一系列问题解析(一)
  19. 神奇旋转,告诉我她是顺时针还是逆时针旋转
  20. 3.Sunday算法的一个小优化

热门文章

  1. Ubuntu-查看ubuntu系统的版本信息
  2. 关于scipy库里面的DCT离散余弦变换函数
  3. 那些靠互联网年赚百万的大佬们是如何赚钱的?
  4. 计算机网络——常考的面试题
  5. 【Linux】通过Mac终端连接虚拟机(ssh root@192.168.31.230)
  6. performance性能监控
  7. android手机安装ubuntu并创建ubuntu图形界面(1)
  8. 新鲜的蔬菜和水果中富含抗氧化物,可以有效延缓衰老和疾病
  9. npm卸载appium,重新安装桌面版appium
  10. 上云利器,K8S应用编排设计器之快到极致