测试数据:

[xiluhua@vm-xiluhua][~]$ cat msn.txt
aaa bbb
bbb ccc
ccc ddd
bbb eee
aaa ccc
bbb sss [xiluhua@vm-xiluhua][~]$ cat msn.bk
AAA BBB
BBB CCC
CCC DDD
BBB EEE
AAA CCC
BBB SSS [xiluhua@vm-xiluhua][~]$ cat msn3.bk
AAA BBB
BBB CCC
CCC DDD
BBB EEE
AAA CCC
BBB SSS

-i选项,不分大小写;-r选项,递归匹配;递归匹配当前目录下的包含"AAA BBB"的文件:

[xiluhua@vm-xiluhua][~]$ grep -nri "AAA BBB" .
./msn.txt::aaa bbb
./msn3.bk::AAA BBB
./msn.bk::AAA BBB
./bk/msn.bk::AAA BBB

-l选项,递归匹配当前目录下包含"AAA BBB"的文件的文件名:

[xiluhua@vm-xiluhua][~]$ grep -rl "AAA BBB" .
./msn3.bk
./msn.bk
./bk/msn.bk

-n选项,显示行号,查找文件/etc/passwd中帐号xiluhua的信息:

[xiluhua@vm-xiluhua][~]$ grep -n "xiluhua" /etc/passwd
:xiluhua:x:::xiluhua:/home/xiluhua:/bin/bash

-c选项,报告文件中模式被匹配到的次数:

[xiluhua@vm-xiluhua][~]$ grep -c "aaa" msn.txt

-e选型,或(or)的方式匹配多个字串

例如:grep –nE 'god|good' msn.txt
匹配god或者good。
[xiluhua@vm-xiluhua][~]$  ps -aux | grep -E 'USER|mem' | grep -v 'grep'
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
xiluhua 10375 0.0 0.0 317024 0 ? Ssl 9月07 0:20 memcached -d -p 11211 -m 128

^字符,匹配以字符开头的行:

root@MiWiFi-R3-srv ~ $ grep '^k' anaconda-ks.cfg
keyboard --vckeymap=us --xlayouts='us'
kexec-tools

字符$,匹配以字符结尾的行:

root@MiWiFi-R3-srv ~ $ grep 'tools$' anaconda-ks.cfg
kexec-tools

grep DEMO的更多相关文章

  1. 深入理解mmap--内核代码分析及驱动demo示例

    mmap是一个很常用的系统调用,无论是分配内存.读写大文件.链接动态库文件,还是多进程间共享内存,都可以看到其身影.本文首先介绍了进程地址空间和mmap,然后分析了内核代码以了解其实现,最后通过一个简 ...

  2. spring-boot 和 docker 集成

    描述 java 的 Spring是一个很火的框架,Spring boot 这个也不用说了,Docker 近年也很火热, 本文就介绍下我在 Spring boot + Docker的集成一些经验 :) ...

  3. python的egg包的安装和制作]

    Defining Python Source Code Encodings Python egg 的安装 egg文件制作与安装 2011-06-10 14:22:50|  分类: python |   ...

  4. etrace跟踪Nginx代码+ FASTCGI

    http://blog.csdn.net/jianqiangchen/article/details/29175285 http://blog.csdn.net/jianqiangchen/artic ...

  5. Spring Boot 配置优先级顺序

    一般在一个项目中,总是会有好多个环境.比如: 开发环境 -> 测试环境 -> 预发布环境 -> 生产环境 每个环境上的配置文件总是不一样的,甚至开发环境中每个开发者的环境可能也会有一 ...

  6. Spring Boot 部署与服务配置

    Spring Boot 其默认是集成web容器的,启动方式由像普通Java程序一样,main函数入口启动.其内置Tomcat容器或Jetty容器,具体由配置来决定(默认Tomcat).当然你也可以将项 ...

  7. Python的egg包

    1.背景 查看flower的源码,首先看到flower的主程序如下: #!/usr/local/sinasrv2/bin/python2.7 # EASY-INSTALL-ENTRY-SCRIPT: ...

  8. spring boot 包jar运行

    win根目录下执行 mvn install 生成 可运行jar使用java -jar jar名字 执行项目 ps aux|grep demo.jar  查看进程 kill -9 processid 杀 ...

  9. linux驱动开发(四) 字符设备驱动框架(自动创建设备节点)

    代码如下 #include <linux/init.h> #include <linux/module.h> #include <linux/kernel.h> # ...

随机推荐

  1. linux设备模型_转

    建议原博文查看,效果更佳. 转自:http://www.cnblogs.com/wwang/category/269350.html Linux设备模型 (1) 随着计算机的周边外设越来越丰富,设备管 ...

  2. python_列表

    1.  列表的定义 (1) 用[]包含的元素,就是列表 (2)可以用list函数定义列表 2.  基本的列表操作(可参考示例) (1)元素赋值 (2)删除元素 (3)分片赋值 3. 列表方法 (1) ...

  3. python matplotlib 绘图

    饼图 import matplotlib.pyplot as plt # The slices will be ordered and plotted counter-clockwise. label ...

  4. SWIFT 闭包的简单使用

    import UIKit @UIApplicationMain class AppDelegate: UIResponder, UIApplicationDelegate { var window: ...

  5. [Intellij IDEA]File size exceeds configured limit(2560000). Code insight features are not available

    在使用 IDEA, 发现一个问题File size exceeds configured limit (2560000). Code insight features not available.

  6. IOS Certificates 制作流程 (Adobe FlashBuilder)

    看到一个Adobe 官方的PDF 说的非常明白,比自己一步一步总结的要好多了 怎么生成 以及为何生成都有说明 http://help.adobe.com/en_US/ppcompdoc/Adobe_P ...

  7. 当android studio一直显示gradle compile dependency

    出现这种情况,是被墙的问题,我的解决办法是这样的: 打开file---->setting,然后搜索gradle,把offline勾上,然后点击apply以及ok,就可以了. 有时候它会关闭,只需 ...

  8. C main

    #include <stdio.h> int main(int argv, char* argc[]) { printf("argv is %d", argv); // ...

  9. 夺命雷公狗---node.js---16之项目的构建在node+express+mongo的博客项目1

    废话不多说我们直接开工... 直接在目录下打开黑窗口: 然后就开始看看我们创建出来的文件了: 然后就开始创建项目下的目录了: 从这里就可以清晰的看得到我们的目录都是以前后台来分离开来的,引入模版也很简 ...

  10. 夺命雷公狗ThinkPHP项目之----企业网站20之网站前台头尾分离

    我们的网站直接让他头尾进行分离即可: 然后在代码里面找到id 为header的这段代码: 然后将整个div的内容都给弄出来,然后在view里面创建一个Public的目录,然后在创建一个header.h ...