关于匹配的实例:
统计所有包含“48”字符的行有多少行
grep -c "48" demo.txt
 
不区分大小写查找“May”所有的行)
grep -i "May" demo.txt
 
显示匹配字符“48”的行及行号
grep -n "48" demo.txt
 
显示输出没有字符“48”所有的行)
grep -v "48" demo.txt
 
显示输出以字符“48”开头,并在字符“48”后是一个tab键所在的行
grep '48[[:blank:]]' demo.txt
 
显示输出以字符“48”开头,第三个字符是“3”或是“4”的所有的行)
grep "48[34]" demo.txt
 
显示输出行首不是字符“48”的行)
grep "^[^48]" demo.txt
 
显示输出第一个字符以“M”或“m”开头,以字符“ay”结束的行)
grep "[Mm]ay" demo.txt
 
显示输出第一个字符是“K”,第二、三、四是任意字符,第五个字符是“D”所在的行)
grep "K…D" demo.txt
 
显示输出第一个字符的范围是“A-D”,第二个字符是“9”,第三个字符的是“D”的所有的行
grep "[A-D][9]D" demo.txt
 
显示第一个字符是3或5,第二三个字符是任意,以1998结尾的所有行
grep "[35]..1998" demo.txt
 
显示输出字符“4”至少重复出现2次的所有行
grep "4\{2,\}" demo.txt
 
显示输出字符“9”至少重复出现3次的所有行
grep "9\{3,\}" demo.txt
 
显示输出字符“9”重复出现的次数在一定范围内,重复出现2次或3次所有行
grep "9\{2,3\}" demo.txt
 
显示输出空行的行号
grep -n "^$" demo.txt
 
如果要查询目录列表中的目录 同:ls -d *
ls -l |grep "^d"
 
在一个目录中查询不包含目录的所有文件
ls -l |grep "^[d]"
 
查询其他用户和用户组成员有可执行权限的目录集合
ls -l |grpe "^d…..x..x"
 
 
假定要抽取代码为484和483的城市位置,
#grep '48[34]' data.f
 
如果要抽出记录,使其行首不是48,
#grep '^[^48]' data.f
 
抽取以L开头,以D结尾长度为5个字符的所有代码,可使用下述方法:
#grep 'L...D' data.f
 
查询所有以5开始以1996或1998结尾的所有记录
#grep '5..199[68]' data.f
 
第一个字符为任意数字,第二个字符在0到5之间,第三个字符在0到6之间:
#grep '[0-9][0-5][0-6]' data.f
#grep '^[0-9][0-5][0-6]' data.f #以行首开始
 
抽取包含数字4至少重复出现两次的所有行:
#grep '4\{2,\}' data.f
 
grep命令加-E参数,这一扩展允许使用扩展模式匹配。
例如,要抽取城市代码为219或216,方法如下:
#grep -E '219|216' data.f
 
结合使用^和$可查询空行。使用- n参数显示实际行数:
#grep -n '^$' data.f
 
匹配特殊字符查询有特殊含义的字符,诸如$.'"*[]^|\+?,必须在特定字符前加\。
假设要查询包含“.”的所有行,脚本如下:
#grep '\.' data.f
#grep '\"' data.f
 
如要查询文件名conftroll.conf(这是一个配置文件),脚本如下:
#grep 'conftroll\.conf' myfile
 
最多六个小写字符,后跟句点,接着是两个大写字符,
#grep '[a-z]\{1,6\}\.[A-Z]\{2\}' filename.deposit
 
grep中通配符*的使用
#grep 'l.*s' testfile #匹配如"looks"
#grep 'oo*' testfile #匹配如"looks"
 
在所有文件中查询行尾包含单词device的所有行
#grep 'device$' *
 
查询目录列表中的目录,方法如下:
#ls -l | grep '^d'
在一个目录中查询不包含目录的所有文件,方法如下:
#ls -l | grep '^[^d]'
要查询其他用户和其他用户组成员有可执行权限的目录集合,方法如下:
#ls -l | grep '^d.....x..x'
 
 

grep匹配命令的更多相关文章

  1. windows类似grep的命令——findstr

    windows类似grep的命令——findstr   使用Chrome发现访问google总是向香港那边跳转,估计配置文件中google网站映射的地址是www.google.com.hk,便想着改配 ...

  2. Linux grep/egrep命令详解

    grep命令是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹 配的行打印出来 grep搜索成功,则返回0,如果搜索不成功,则返回1,如果搜索的文件不存在,则返回2. grep的规则表达式( ...

  3. 【文本处理命令】之grep搜索命令详解

    一.grep搜索命令 在日常使用中grep命令也是会经常用到的一个搜索命令.grep命令用于在文本中执行关键词搜索,并显示匹配的结果. 格式: grep [选项] [文件] Usage: grep [ ...

  4. linux 用grep匹配横线

    file的内容如下: ADSFADSFSDFASDFJKJK----------------------------------------ADSFADSFSDFASDFJKJK----------- ...

  5. ps | grep app 命令不显示grep app本身进程的几种方式

    ps | grep app 命令不显示grep app本身进程的几种方式 使用ps命令查询进程,常常我们不想打印出"ps | grep app"这个当前进程,比如如下: [root ...

  6. windows 下面的grep awk 命令

    windows 下面的grep awk 命令 grep 学习了:http://blog.csdn.net/chengfans/article/details/53784936 awk学习了:http: ...

  7. sed grep find命令

    一.sed [-nerf][n1,n2] action -n 安静模式,只有经过sed处理过的行才显示出来,其他不显示. -r 表示sed支持扩展的正则表达式 -e 表示直接在命令行模式上进行sed操 ...

  8. Linux下的grep搜索命令详解(一)

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

  9. linux中查找(find、locate、which、whereis、grep)命令汇总、帮助命令(man、whatis、apropos、info、help)汇总

    (一)find命令详解 find:功能:文件搜索: 语法:find[搜索范围][匹配条件]:  只要匹配条件完全符合才可以被显示,使用通配符*匹配条件*则可以显示匹配条件的所有目录,问号?匹配单个字符 ...

随机推荐

  1. linux中sleep详解实例

    在linux编程中,有时候会用到定时功能,常见的是用sleep(time)函数来睡眠time秒:但是这个函数是可以被中断的,也就是说当进程在睡眠的过程中,如果被中断,那么当中断结束回来再执行该进程的时 ...

  2. [百家号]7nm ARM 64核!华为Hi1620高性能CPU公开:3.0GHz

    7nm ARM 64核!华为Hi1620高性能CPU公开:3.0GHz https://baijiahao.baidu.com/s?id=1617735663824201180&wfr=spi ...

  3. System x 服务器制作ServerGuide U盘安装Windows Server 2008 操作系统 --不格式化盘

    1.全格式化 用ServerGuide10.5 刻录成U盘 下载附件中的Rufus 3.6工具,并制作引导U盘 以管理员权限打开Rufus 3.6, 选择镜像文件 2.不格式化,仅安装C盘下载老毛桃U ...

  4. Linux系列(13)之程序与服务的概念

    知道如何区分程序与进程吗? 知道如何产生进程吗? 知道进程之间的相关性吗? 知道进程调用的流程吗? 知道进程与服务的区别吗? 1.程序与进程的区别 bash就是一个程序,当我们登录之后系统就会给我们分 ...

  5. 深入理解C++11 C3

    继承构造函数 class A { public: A(int i):m_i(i) {} A(double d, int i):m_d(d),m_i(i){} private: int m_i{0}; ...

  6. C标准库常用函数概要

    stdio.h printf()/fprintf() printf的返回值是打印的字符数, 发生错误则返回负数 scanf()/fscanf() scanf的返回值是成功赋值的变量个数, 失败则返回E ...

  7. [Tarjan系列] Tarjan算法求无向图的桥和割点

    RobertTarjan真的是一个传说级的大人物. 他发明的LCT,SplayTree这些数据结构真的给我带来了诸多便利,各种动态图论题都可以用LCT解决. 而且,Tarjan并不只发明了LCT,他对 ...

  8. CodeFirst与EntityFramework【续】

    3.    实现一对一的关系.在介绍一对多关系和多对多关系时,大家应该已经注意到了只要存在依赖关系的两个类的定义中包含对方的实例或实例的集合,Entity Framework Code First会自 ...

  9. phpspider爬虫框架的使用

    这几天使用PHP的爬虫框架爬取了一些数据,发现还是挺方便的,先上爬虫框架的文档 phpspider框架文档 使用方法其实在文档中写的很清楚而且在demo中也有使用示例,这里放下我自己的代码做个笔记 & ...

  10. Arcgis js之web墨卡托(3857)转经纬度坐标(4326)

    Arcgis js之web墨卡托(3857)转经纬度坐标(4326) 手动转化方法: function mercatorTolonlat(mercator){ var lonlat={x:0,y:0} ...