linux 正则表达式 使用grep命令
最常应用正则表达式命令是 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命令的更多相关文章
- Linux中利用grep命令如何检索文件内容详解
前言 Linux系统中搜索.查找文件中的内容,一般最常用的是grep命令,另外还有egrep命令,同时vi命令也支持文件内容检索.下面来一起看看Linux利用grep命令检索文件内容的详细介绍. 方法 ...
- [Linux]正则表达式和grep使用【转载】
[Linux]正则表达式和grep使用 2018年12月05日 23:45:54 祥知道 阅读数 78 标签: 正则表达式grepLinuxegrep 更多 个人分类: Linux 所属专栏: Li ...
- Linux - 结合正则表达式使用grep命令
Grep with Regular Expression grep命令基本用法 grep [-acinv] [--color=auto] [-A n] [-B n] '搜寻字符串' 文件名参数说明: ...
- Unix/Linux中的grep命令(转)
本文转载自:如何使用Unix/Linux grep命令——磨刀不误砍柴工系列.该博文条理很清晰. grep简介 grep在一个或多个文件中查找与模式字符串(pattern)匹配的行,并将搜索的结果打印 ...
- 【Linux基础】grep命令
1.简介 grep是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来. 命令格式:grep [option] pattern file 2.常用参数与举例: -e : 使用P ...
- Linux find、grep命令详细用法
在linux下面工作,有些命令能够大大提高效率.本文就向大家介绍find.grep命令,他哥俩可以算是必会的linux命令,我几乎每天都要用到他们.本文结构如下:find命令 find命令的一般形式 ...
- Linux中通过grep命令检索文件内容和指定内容前后几行
原文链接: https://www.linuxidc.com/Linux/2017-11/148390.htm Linux系统中搜索.查找文件中的内容,一般最常用的是grep命令,另外还有egrep命 ...
- linux(centos8):用grep命令查找文件内容
一,grep的用途: linux平台有最常用的三大文本处理工具:awk/sed/grep grep的功能:搜索指定文件的内容,按照指定的模式匹配,并输出匹配内容所在的行. 需要注意的地方:grep只支 ...
- Linux正则表达式与grep
bash是什么 bash是一个命令处理器,运行在文本窗口中,并能执行用户直接输入的命令 bash还能从文件中读取linxu命令,称之为脚本 bash支持通配符.管道.命令替换.条件判断等逻辑控制语句 ...
随机推荐
- SpringMVC POJO传参方式
有两POJO类 Address.java package com.proc; public class Address { private String province; private Strin ...
- 【视频点播最佳实践】使用OSS SDK上传视频到点播
摘要: 场景 点播上传SDK缺乏需要的语言版本(如C/C++.Go等)或相应的功能(如网络流上传.追加上传),可以直接使用OSS的SDK进行上传. 准备工作 确认已开通点播服务并完成了相关配置.确认已 ...
- 怎么画一条0.5px的边
编者按:本文由人人网FED发表于掘金,并已授权奇舞周刊转载 什么是像素? 像素是屏幕显示最小的单位,在一个1080p的屏幕上,它的像素数量是1920 1080,即横边有1920个像素,而竖边为1080 ...
- H5手机端开发问题汇总及解决方案
前言 少侠,请留步,相见必是缘分,赠与你一部<踏坑秘籍> 扎马步 踏坑第一式 ios竖屏拍照上传,图片被旋转问题 解决方案 // 几个步骤 // 1.通过第三方插件exif-js获取到图片 ...
- hive中对子查询如in,exists等支持
案例情况:同事使用公司数据探查跑一段代码,部分代码如下,报错,显示不支持in内的子查询.但是直接用虚拟机去跑的话代码没有任何报错,也出结果,很奇怪. SELECT t1.SIGN_CODE AS bu ...
- cm日志哪里看
root@d001:/home/centos# find / |grep cloudera-scm-agent.log/opt/cm-5.13.0/log/cloudera-scm-agent/clo ...
- 【NOIP2016提高A组五校联考2】running
题目 小胡同学是个热爱运动的好孩子. 每天晚上,小胡都会去操场上跑步,学校的操场可以看成一个由n个格子排成的一个环形,格子按照顺时针顺序从0 到n- 1 标号. 小胡观察到有m 个同学在跑步,最开始每 ...
- Python使用XML操作mapnik,实现复杂标注(Multi line text symbolizer)
test.py import mapnik stylesheet = 'world_style.xml' image = 'world_style.png' m = mapnik.Map(1200, ...
- 对elementui整体设计分析-------引用
1.需求分析 丰富的 feature:丰富的组件,自定义主题,国际化. 文档 & demo:提供友好的文档和 demo,维护成本小,支持多语言. 安装 & 引入:支持 npm 方式和 ...
- Fiddler的工作原理与主菜单介绍(一)
1.简介: 官网:https://www.telerik.com/fiddler Fiddler是比较好用的web代理调试工具之一,它能记录并检查所有客户端与服务端的HTTP/HTTPS请求,能够设置 ...