最常应用正则表达式命令是 awk sed grep

[root@MongoDB ~]# cat mike.log
I am mike!
I like linux. I like play football, tennis and reading.
my qq is !
my blog is https://i.cnblogs.com
my blog is i.miek.com
I am miek.
not MIEK
NOT MIKE

基础正则字符说明

1.^word 匹配以word开头的内容  vi/vim编辑器里^代表一行的开头

2.word$ 匹配以word结尾的内容  vi/vim编辑器里$代表一行的结尾

3. ^$ 表示空行

a.过滤出来以m开头的行

[root@MongoDB ~]# grep "^m" mike.log
my qq is !
my blog is https://i.cnblogs.com
my blog is i.miek.com

b.过滤出来以m结尾的行

[root@MongoDB ~]# grep "m$" mike.log
my blog is https://i.cnblogs.com
my blog is i.miek.com

c.过滤匹配空行的行

grep -n 显示匹配的行号

[root@MongoDB ~]# grep -n '^$' mike.log
:
:

grep -v 排除内容  指定字段不显示

过滤出 不带 空行的行,其他行都打印

[root@MongoDB ~]# grep -vn "^$" mike.log
:I am mike!
:I like linux.
:I like play football, tennis and reading.
:my qq is !
:my blog is https://i.cnblogs.com
:my blog is i.miek.com
:I am miek.
:not MIEK
:NOT MIKE

4. . 代表且只能代表任意一个字符。

5. \ 转义

6. * 重复0个或多个前面的一个字符 例如o* 匹配没有o,有一个o或多个o

7 .* 匹配所有字符  ^.*以任意多个字符开头, .*$ 以任意多个字符结尾

a. 匹配任意一个字符  .

因为第三行没有字符 没有匹配到

[root@MongoDB ~]# grep -n "." mike.log
:I am mike!
:I like linux.
:I like play football, tennis and reading.
:my qq is !
:my blog is https://i.cnblogs.com
:my blog is i.miek.com
:I am miek.
:not MIEK
:NOT MIKE

.*

[root@MongoDB ~]# grep -n ".*" mike.log
:I am mike!
:I like linux.
:
:I like play football, tennis and reading.
:my qq is !
:my blog is https://i.cnblogs.com
:my blog is i.miek.com
:I am miek.
:not MIEK
:NOT MIKE
:

匹配 mi..    .. 任意字符

root@MongoDB ~]# grep -n "mi.." mike.log
:I am mike!
:my blog is i.miek.com
:I am miek.

grep -i 不区分大小写

[root@MongoDB ~]# grep -ni "mi.." mike.log
:I am mike!
:my blog is i.miek.com
:I am miek.
:not MIEK
:NOT MIKE

匹配以.结尾 需要转义

[root@MongoDB ~]# grep -n "\.$" mike.log
:I like linux.
:I like play football, tennis and reading.
:I am miek.

-o 只显示匹配的内容

[root@MongoDB ~]# grep -no "mi.." mike.log
:mike
:miek
:miek

8. [abc]  匹配字符串集合内任意一个字符 [a-zA-Z],[0-9]

9. [^abc]  匹配不包含^后的任意一个字符的内容

中括号里的^为取反

匹配0-9数字的行 匹配数字的行

[root@MongoDB ~]# grep  "[0-9]" mike.log
my qq is !

linux 正则表达式 使用grep命令的更多相关文章

  1. Linux中利用grep命令如何检索文件内容详解

    前言 Linux系统中搜索.查找文件中的内容,一般最常用的是grep命令,另外还有egrep命令,同时vi命令也支持文件内容检索.下面来一起看看Linux利用grep命令检索文件内容的详细介绍. 方法 ...

  2. [Linux]正则表达式和grep使用【转载】

    [Linux]正则表达式和grep使用 2018年12月05日 23:45:54 祥知道 阅读数 78 标签: 正则表达式grepLinuxegrep 更多 个人分类: Linux 所属专栏:  Li ...

  3. Linux - 结合正则表达式使用grep命令

    Grep with Regular Expression grep命令基本用法 grep [-acinv] [--color=auto] [-A n] [-B n] '搜寻字符串' 文件名参数说明: ...

  4. Unix/Linux中的grep命令(转)

    本文转载自:如何使用Unix/Linux grep命令——磨刀不误砍柴工系列.该博文条理很清晰. grep简介 grep在一个或多个文件中查找与模式字符串(pattern)匹配的行,并将搜索的结果打印 ...

  5. 【Linux基础】grep命令

    1.简介 grep是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来. 命令格式:grep [option] pattern file 2.常用参数与举例: -e :  使用P ...

  6. Linux find、grep命令详细用法

    在linux下面工作,有些命令能够大大提高效率.本文就向大家介绍find.grep命令,他哥俩可以算是必会的linux命令,我几乎每天都要用到他们.本文结构如下:find命令 find命令的一般形式 ...

  7. Linux中通过grep命令检索文件内容和指定内容前后几行

    原文链接: https://www.linuxidc.com/Linux/2017-11/148390.htm Linux系统中搜索.查找文件中的内容,一般最常用的是grep命令,另外还有egrep命 ...

  8. linux(centos8):用grep命令查找文件内容

    一,grep的用途: linux平台有最常用的三大文本处理工具:awk/sed/grep grep的功能:搜索指定文件的内容,按照指定的模式匹配,并输出匹配内容所在的行. 需要注意的地方:grep只支 ...

  9. Linux正则表达式与grep

    bash是什么 bash是一个命令处理器,运行在文本窗口中,并能执行用户直接输入的命令 bash还能从文件中读取linxu命令,称之为脚本 bash支持通配符.管道.命令替换.条件判断等逻辑控制语句 ...

随机推荐

  1. java poi 操作

    Java POI 操作Excel(读取/写入) https://www.cnblogs.com/dzpykj/p/8417738.html Java操作Excel之Poi基本操作 https://my ...

  2. DirectX屏幕捕获和输出视频

    #include <Windows.h> #include <mfapi.h> #include <mfidl.h> #include <Mfreadwrit ...

  3. java初学者的Springmvc04笔记

    Springmvc04 Springmvc的全局异常处理 springmvc与spring的整合 myBatis 1.Springmvc的全局异常处理 作用:一次配置,对于controller层的所有 ...

  4. postman—创建collection,执行collection和批量执行

    接口测试中,可以在 Postman 逐个创建请求.但当请求逐渐增多时,如果我们不采取任何措施管理,散乱的请求维护起来就比较麻烦了.这个时候我们可以创建测试集 Collection 来对这些请求进行管理 ...

  5. springboot 出现异常 java.net.BindException: Address already in use: bind

    java.net.BindException: Address already in use: bind

  6. 【canvas学习笔记七】混合和裁剪

    globalCompositeOperation 如果我们先画了一个图形,然后要在这个图形上面再画一个图形,那么这个图形会怎么样呢?是覆盖在原来的图形上面吗?这时候,就要用到globalComposi ...

  7. 【canvas学习笔记三】样式和颜色

    上一节我们学习了如何用路径绘制各种形状,但我们只能用默认的颜色和线条.这节就来学习设置不同的颜色和线条样式. 颜色 设置颜色主要有两个属性: fillStyle = color 设置填充颜色 stro ...

  8. Oracle--单实例数据库迁移到RAC集群服务器(RMAN)

    单实例数据库版本:11.2.0.1 RAC实例数据库版本:11.2.0.3 1,在单实例数据库备份文件 RMAN> show all; using target database control ...

  9. EM 算法资料

    EM 算法的英文全称是: Expectation-Maximum. EM 算法的步骤 假设 \(Z\) 是隐变量,\(\theta\) 是待定参数. E 步:固定参数 \(\theta\),求 \(Z ...

  10. ArrayList类源码浅析(二)

    1.removeAll(Collection<?> c)和retainAll(Collection<?> c)方法 第一个是从list中删除指定的匹配的集合元素,第二个方法是用 ...