grep命令和正则表达式

grep命令和正则表达式的命令笔记

grep 支持正则表达式 支持字符串

grep 是一个文本过滤工具

egrp:基本正则表达式

fgrp:扩展正则表达式

grep的命令格式     “grep 目标   文件”

grep还支持变量    “grep $ 变量 文件”

grep还支持命令    “grep 命令   文件”

grep数标准输入,所有可以和管道符结合

标准输出 | grep标准输入

“grep 命令 文件” grep命令格式的示例

grep包含root的行 - 副本

“grep -v 目标 文件” 显示不包含目标的其他内容 。 下面表示非#号开头的行

grep -v非

grep命令和正则表达式

“grep -i 目标 文件” 忽略目标的大小写grep命令和正则表达式

grep -i忽略大小写 - 副本

 

“grep -n 目标 文件” 目标文件在第几行grep命令和正则表达式,并显示序列号

grep -n 看目标在什么行

 

“grep -c 目标 文件” 查看目标这个有几行grep命令和正则表达式

grep -c 看总共有几行 - 副本

“grep -o 目标 文件” 只显示相关的字符,一行的其他不显示grep命令和正则表达式只显示这个字符,不显示其他

“grep -q 目标 文件” 不显示输出的内容,可以用 echo $?查看, 非0代表没有找到目标grep命令和正则表达式grep -p 不显示结果 - 副本

“grep -A 目标 文件” A后面加个数字包含目标的后几行grep命令和正则表达式

grep -A 加数字显示后几行 - 副本

“grep -B 目标 文件”  B后面加数字显示包含目标的前几行grep命令和正则表达式grep -B 后面加个数字显示目标的前几行 - 副本

“grep -C 目标 文件” C前面加个数字显示包含目标的前后几行grep命令和正则表达式grep -C 后面加数字显示目标的前后几行 - 副本

 

“grep -e 目标1 -e 目标2 文件” 包括目标1或者目标2 或者的关系,一行不显示两目标grep命令和正则表达式grep -e 或者的关系 - 副本

“”grep -w 单词 文件“” 在文件里面是单词的目标 grep命令和正则表达式grep -w 是一单词为目标的 - 副本

字母数字加下划线都是字母的一部分,其他都不是字母的一部分grep命令和正则表达式grep-w加特殊字符不是单词 - 副本

grep -f 后面是跟的文件,将目标放在几个文件里面 ,然后执行grep -f grep命令和正则表达式grep -f 将目标写到一个文件

grep命令和正则表达式grep -f 执行的结果

 

正则表达式

处理文本内容 通过特定的符号来匹配或者控制

BRE 基本正则表达式

ERE 扩展正则表达式

元字符分类:字符匹配 ,匹配次数, 位置锚定, 分组

字符匹配

. 表示文件内容任意一个字符“a..d” abcd 两个..表示两个字符。a代表一个字符,.代表一个字符,c代表一个字符grep命令和正则表达式

正则表达式 字符。描述

[ . ] 点放在中括号 代表.点的本意

转义 \ . 代表. 点字符的本意,中间的点转义到原来.的意思grep命令和正则表达式grep 正则表达式字符转义 - 副本

grep “r[abc]t” 取中括号里面的任意的一个字符grep命令和正则表达式

grep正则表达式中括号任意一个字符

grep “r[^abc]t” 除了中括号里面的任意字符grep命令和正则表达式grep正则表达式除了中括号里面的任意一个字符

 

匹配次数 :某一个字符出现的次数

*表示字符前面出现任意次或者0次? *表示前面出现的相同字符是不确定的grep命令和正则表达式grep正则表达式前面的字母出现任意次

.* 代表任意长度的任意字符串, .代表一个字符,* 表示字符前面出现任意次或者0次grep命令和正则表达式grep正则表达式点星

\ ? 匹配字符前面出现一次或者0次 grep命令和正则表达式

grep正则表达式问号星前面的字符出现一次或者0次

\ + 匹配字符前面出现一次或者一次以上grep命令和正则表达式

grep 正则表达式加号出现一次或者一次以上 - 副本

\ {数字 \ } 精确单词匹配多少次,前面的o必须出现22次grep命令和正则表达式正则表达式精确匹配数字

\ {数字,\ } 大于多少次 ,前面的o必须出现10次以上grep命令和正则表达式grep正则表达式必须大于数字多少

\ [数字 , 数字 \ } 前面取得数字必须出现的次数大于多少并小于多少次:grep命令和正则表达式grep正则表达式数字大于多少小于多少

多个位置锚定

^ 表示行首 锚定 ^ root root开头的行grep命令和正则表达式

位置锚定root开头的行

$ 表示行尾 的行grep命令和正则表达式

grep位置锚定表示结尾的行

​ “\ < root” root位于一行的行左 以root词开头的行 grep命令和正则表达式

grep位置锚定词开头的行

​ “\ > root” root位于一行的行左右 词尾 grep命令和正则表达式

grep位置锚定以词结尾的行

“\ b目标 \b” 表示单词的边界grep命令和正则表达式

grep位置锚定b表示单词的边界

 

分组 表示的是一个单词出现几次

\ (wang\ ) 表示分组 , \ {3\ } 表示wang出现3次

grep命令和正则表达式grep分组wang出现3次

后向引用 \1 必须和前面的目标一样

grep命令和正则表达式grep分组后向引用grep分组例题grep分组例题2

grep命令和正则表达式

本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/95322

(0)
周亚飞周亚飞
上一篇 2018-04-07
下一篇 2018-04-08

相关推荐

  • 网段划分

    物理上在一个网段,逻辑上不在一个网段 则通讯必须经过路由器 只要不在一个网段就要经过路由器 路由表   由于有类地址之间跨度太大,不利于使用,现在生产环境中使用的是无类地址。 无类地址:网络ID,主机ID不确定 CIDR:无类域间路由 无类域间路由表示法 IP/网络ID位数   172.20.0.123 netmask:子网掩码 32位二…

    Linux笔记 2018-07-02
  • Linux系统启动流程详解

    Linux系统从按下电源键开始到系统启动要求用户输入用户名,中间究竟发生什么?了解Linux系统的启动流程,不仅有助于我们更加深入的理解linux底层设计理念,更能帮助我们再出现系统启动故障时,迅速排查出故障原因。

    2018-05-10
  • 使用diff同patch工具

    Linux命令使用

    Linux笔记 2018-07-14
  • 软件包管理 2 —–基本知识 rpm yum

    rpm库文件查看二进制程序所依赖的库文件ldd /PATH/TO/BINARY_FILE管理及查看本机装载的库文件ldconfig 加载库文件/sbin/ldconfig -p:显示本机已经缓存的所有可用库文件名及文件路径映射关系配置文件:/etc/ld.so.conf, /etc/ld.so.conf.d/*.conf缓存文件:/etc/ld.so.cac…

    Linux笔记 2018-04-22
  • 震惊!!!原来CentOS-7装起来这么容易

    震惊!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

    2018-07-22
  • 描述Linux计算机的组成及其功能

    描述计算机的组成及其功能

    2018-04-16