grep命令解析

  • 一、grep命令的基本概念和用途
  • 二、grep命令的命令格式
    • 1、主要选项[option]说明及示例
    • 2、grep、cat、ps、管道符配合使用
    • 3、[pattern]正则表达式主要参数[即元字符]说明和示例
    • 4、在指定目录所有文件搜索关键字,并显示文件名

一、grep命令的基本概念和用途

grep命令是linux中一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来。
在一个或多个文件中搜素字符串模式,如果字符串模式包括空格,也必须被引用,模式后的所有字符串被看作文件名。搜索的结果被送到标准输出(stdout),不影响原文件内容。

二、grep命令的命令格式

grep [option] pattern files

根据上面的命令格式,我们可以了解到grep命令主要有两个部分[option]和pattern,下面分别从这两个部分开始去了解熟悉grep命令。

1、主要选项[option]说明及示例

参数选项 解释说明
-c 只统计匹配的行数
-v 排除匹配结果
-n 显示匹配行与行号
-i 不区分大小写
-E 使用egrep命令
-color = auto 为grep过滤结果添加颜色
-w 只匹配过滤的单词
-o 只输出匹配的内容

示例:
测试文件:test.c

过滤test.c文件中hello内容
grep hello test.c

统计test.c中hello内容的行数
grep -c hello test.txt

过滤test.c文件中hello内容并显示行号
grep -n hello test.c
排除test.c文件中匹配结果为hello的内容
grep -v hello test.c

过滤test.c文件中hello内容,不区分大小写
grep -i hello test.c

只输出匹配结果为hello的内容
grep -o hello test.c

2、grep、cat、ps、管道符配合使用

过滤test.c文件中hello内容
cat test.c | grep hello

过滤进程信息
ps -ef | grep renhui

ps 打印进程信息
renhui 过滤关键字
|管道符,将一个命令的输出作为另外一个命令的输入

3、[pattern]正则表达式主要参数[即元字符]说明和示例

-? : 同时显示匹配行的上下?行
grep -n -2 hello test.c


^ : 匹配正则表达式的以“某字符串”开头的行
grep "^int" test.c

$ : 匹配正则表达式的以“某字符串”结尾的行
grep ");$" test.c

< : 从匹配正则表达式的行开始
grep "\<h" test.c

> : 到匹配正则表达式的行结束
grep "n\>" test.c

[ ] : 单个字符,如[A] 即A 符合要求
grep [a] test.c

[^ ] : 显示不包括括号中字符串的所有行
grep [^n] test.c

[ - ] : 范围匹配,如[A-C],即A、B、C都符合要求;如[a,b],即只有a和b符合要求
grep [a-d] test.c

另外有些字符类描述,大家有兴趣可以去记一下
[:alnum:] 字母数字集 “a-z A-Z 0-9”
[:alpha:] 字母集合 “a-z A-Z”
[:blank:] 空格或制表键
[:cntrl:] 任何控制字符
[:digit:] 数字集合 “0-9”
[:graph:] 任何可视字符(无空格)
[:lower:] 小写字母 “a-z”
[:print:] 非控制字符
[:punct:] 标点字符
[:space:] 空格
[:upper:] 大写字母 “A-Z”
[:xdigit:] 十六进制数字 “0-9 a-f A-F”

4、在指定目录所有文件搜索关键字,并显示文件名

grep -r "hehe" .

Linux下grep命令解析相关推荐

  1. linux中grep的例子,Linux下grep命令使用实例

    那么你知道grep命令参数.如何使用grep命令去搜索某个文件中的内容呢.grep 命令递归查找.使用grep去匹配某一个单词么?接下来是小编为大家收集的Linux下grep命令使用实例,欢迎大家阅读 ...

  2. linux命令查找关键字前五行,linux下grep命令实现查找多个关键字(与关系和或关系)...

    grep (global search regular expression(RE) and print out the line,全面搜索正则表达式并把行打印出来)是一种强大的文本搜索工具,它能使用 ...

  3. linux下grep命令用法,全面详解linux下grep命令的用法

    学linux系统,grep这个命令是必须要掌握的.grep命令是用来查找文件或标准输出中匹配的行,它的强大之处在于它支持正则表达式.日常工作中,grep绝对是用的最多的命令之一. 注:本文只介绍gre ...

  4. 牛犇linux视频,Linux下grep命令

    1. grep简介 grep (global search regular expression_r(RE) and print out the line,全面搜索正则表达式并把行打印出来)是一种强大 ...

  5. linux下sar命令解析 (性能相关以及性能调试)

    sar的常用参数: -A:所有报告的总和. -u:CPU利用率 -v:进程.I节点.文件和锁表状态. -d:硬盘使用报告. -r:内存和交换空间的使用统计. -g:串口I/O的情况. -b:缓冲区使用 ...

  6. linux下grep同时匹配多个单词,Linux下使用grep命令搜索多个单词的方法

    摘要 腾兴网为您分享:Linux下使用grep命令搜索多个单词的方法,篆刻字典,中国知网,虚拟机,微博等软件知识,以及掌上公交app,尚书ocr,汇博企业,强密码,支付宝,mh,海融易,我的世界火影忍 ...

  7. linux的常见命令解析

    linux的常见命令解析 1.进入目录 语法: cd 目录 示例: cd /home #进入到home目录 目录存在可以用tab健自动提示出来 cd / cd ~ # /和~区别是 /是进入到根目录, ...

  8. Linux查看WAS的jvm信息,linux 下使用命令查看jvm信息

    java程序员除了编写业务代码之外,特别是项目上线之后,更需要关注的是系统的性能表现,这个时候就需要了解一下jvm的性能表现了,可以借助于java虚拟机自带的一些分析工具,主要有三个常用的命令. 1. ...

  9. linux下find命令用法

    一.Linux中find常见用法示例 ·find    path    -option    [    -print ]    [ -exec    -ok    command ]    {} /; ...

最新文章

  1. Spark2.x写入Elasticsearch的性能测试
  2. mongodb 对象唯一索引_什么是MongoDB?简介,架构,功能和示例
  3. iBatis学习网站推荐
  4. scala学习笔记(一)入门初探
  5. 关于拦截hao123页面广告的自定义规则
  6. Spring 杂谈.
  7. Python 入门级1
  8. Linux内核分析 - 网络[三]:从netif_receive_skb()说起
  9. 解决Ubuntu Chrome浏览器很卡不响应的问题
  10. 微信公众平台开发(51)会员卡
  11. ipmitool介绍_ipmitool管理工具
  12. 10个5G应用优秀案例!工业互联网、智慧城市、智慧医疗等都在这里
  13. ae导出gif插件_有了它,AE终于可以直接导出gif动图啦!
  14. 中文输入法中光标跟随能力触发的浏览器事件探究
  15. MySQL主从配置(Django实现主从配置读写分离)
  16. javaweb项目大概轮廓
  17. 如何删除GitHub中的所有提交历史记录?
  18. Python读取CSV文件,并进行数据可视化绘图
  19. 计算机usb端口没反应,解决电脑USB接口没反应的小方法
  20. 如何实现JAVA游戏存档_保存游戏数据 – Java

热门文章

  1. parseInt() 、 parseFloat() 和Number()的区别
  2. GNS3 配置Static p2p GRE over IPsec
  3. Hibernate单向关联1-1
  4. 【GlobalMapper精品教程】055:GM坐标转换器的巧妙使用
  5. java 判断文件是否存在 存在就删除_java中如何判断文件是否存在,不存在则新建文件...
  6. VS找不到libeay32.lib库(未知情况)
  7. 百度网盘下载限速破解-Mac版
  8. 神经网络训练用什么软件,在线神经网络训练
  9. GIS系列(十四)深刻理解一下WMTS
  10. 运用canvas将两张图片画在一起,生成一张新的图片,然后实现点击下载图片