shell脚本快速入门----正则表达式
一. "." 符号 (一个英文句号)
用于匹配换行符之外的任意一个字符
如 root 可用r..t来匹配
二. “*”符号
重复匹配前一个字符
如ab abc abb等可用ab匹配
. 表示任意长度不包含换行符的字符
三. "{n,m}"符号
重复匹配前一个字符指定次数
{n} 重复匹配前一个字符n次
{n,}重复匹配前一个字符n次以上
{n,m} 重复匹配前一个字符n到m次
四. “^”符号
匹配以固定字符开头的行
^root 匹配以root开头的行
五. “$”符号
匹配以固定字符结尾的行
root$ 匹配以root结尾的行
六. “[ ]”符号
匹配符号内出现的任意字符-是必须,表示从xx到xx
[A-D]匹配A到D
[A-Da-d]匹配A到D和a到d
[^a-d]匹配a到d之外的字符 ^出现在这里表示取反
七. “\”符号
转义字符,然后面的字符不被解释
八. “\<”和“\>”符号
\<hello 匹配用hello开头的单词
hello\> 匹配用hello结束的单词
\<hello\> 匹配hello单词
九. “\d”符号
匹配一个数字,这是一种Perl兼容模式表达式,使用时需要加上-P参数
如 grep -P "\d"
十. “\b”符号
匹配单词边界
\bhello\b J精确匹配hello单词
十一. “\B”匹配非单词边界
hello\B 可以匹配helloworld中的hello
十二. “\w”和“\W”符号
\w 匹配字母数字和下划线
\W匹配非字母非数字和非下划线
十三. "\r" "\n" "\t" "\f" "\s" "\S" 符号
\n 匹配换行符
\r 匹配回车符
\t 匹配制表符
\f 匹配一个换页符
\s 匹配任何空白字符
\S 匹配任何非空字符
十四. 扩展的正则表达式
使用扩展的正则表达式时,需要使用egrep命令
? 匹配前一个字符0次或1次
+ 匹配前一个字符1次以上
| 或,连接不同的匹配选项,并列关系
() 用以将不同的 | 表示的匹配分支括起来
十五. 通配符
*代表一个或者多个字符
? 任意一个字符
{} 匹配所有括号内以逗号隔开的字符
^ ! 取反或逻辑非
shell脚本快速入门----正则表达式的更多相关文章
- Shell脚本快速入门
最近看了下Shell脚本.曾经遇到很多现成的工具包里边就多次用到了Shell脚本.总之这东西的作用无非就是将一系列的操作进行整合. ·整合后使得一套工作更加模块化规范化. ·批量处理要比手动操作快得多 ...
- shell脚本快速入门----shell基本语法总结
1.#!脚本的开头 #!/bin/bash 2.脚本属性 添加可执行属性,chmod +x 或使用"."运行,例如运行当前目录下的a.sh 可执行命令 ". ./a.sh ...
- shell脚本从入门到精通
阿里云大学 shell脚本从入门到精通 第1 章 : shell脚本编程-变量-算术表达式-判断语句-if分支语句 第2 章 : case-for-While-双括号-循环嵌套-break-conti ...
- 【转载】MySQL被慢sql hang住了,用shell脚本快速清除不断增长的慢sql的办法
原文地址:MySQL被慢sql hang住了,用shell脚本快速清除不断增长的慢sql的办法 作者:mchdba 某个初级dba误删index,mysql漫山遍野全是10S以上的慢sql,mysql ...
- 08 bash特性--shell脚本编程入门
shell脚本编程入门 编程语言介绍 编程语言分为:机械语言.汇编语言和高级语言: 计算机能识别的语言为机械语言,而人类能学习的并且能够方便掌握的为高级语言,所以,我们所编写的程序就要通过编译来转换成 ...
- shell脚本从入门到精通(初级)之入门篇
写在开头 本文是阅读<Linux命令行与shell脚本编程大全>时的一些笔记,主要是shell脚本的一些基本语法, 还有很多细节和高级内容没有写到. 笔者也是shell script菜鸟, ...
- 利用shell脚本快速定位日志
我们平时查日志,在测试环境,日志文件只有几个的情况下,我们可以通过找时间接近的文件然后根据关键词定位报错位置,大不了都查一遍,这都可以忍受.但是在实际的生产环境下,服务器集群部署,每天的日志非常多非常 ...
- shell脚本从入门到精通(中级)之提高篇
shell 脚本入门到精通(中级) 一.shell 脚本的执行 二.输出格式化 三.数据类型 四.重定向 五.变量 一.shell 脚本的执行 1. 脚本执行的4种方法 $ ls /tmp/test. ...
- shell脚本快速配置yum源
我们在使用Red Hat系列的Linux系统时经常要配置yum源,本文档提出一个快速配置yum源的方法,就是用shell脚本来实现. 我们在使用Red Hat系列的Linux系统时经常要配置yum源, ...
随机推荐
- python并发编程之多进程(实践篇) 转
一 multiprocessing模块介绍 python中的多线程无法利用多核优势,如果想要充分地使用多核CPU的资源,在python中大部分情况需要使用多进程.Python提供了multiproce ...
- [转]CSS学习笔记
原文:http://www.fx114.net/qa-266-93710.aspx 01.什么是CSS. CSS指层叠样式表(Cascading Style Sheets). ·样式定义如 ...
- 【git冲突解决】: Please commit your changes or stash them before you merge.
刚刚使用 git pull 命令拉取代码时候,遇到了这样的问题: error: Your local changes to the following files would be overwritt ...
- Anderson《空气动力学基础》5th读书笔记 第5记——推导二维机翼的空气动力学系数
机翼的受力分析图 我们知道,空气对一个物体产生的升力和阻力以及力矩源于作用在整个物体上的压力分布和剪切力分布,所以我们分析上图可知(取单位展长的机翼): 对于上表面: ...
- centos搭建离线epel源
准备 有一个联网的机器,并已经配置好epel源 安装reposync和createrepo命令 yum install yum-utils #reposync在这里 yum install creat ...
- 如何按名称或PID查找一个进程?如何按端口号查找一个进程?如何查看一个进程的CPU和内存、文件句柄使用情况?如何查看CPU利用率高的TOP10进程清单?如何根据PID强制终止进程?
如何按名称或PID查找一个进程?如何按端口号查找一个进程?如何查看一个进程的CPU和内存.文件句柄使用情况?如何查看CPU利用率高的TOP10进程清单? 目录 如何按名称或PID查找一个进程?如何按端 ...
- 想买保时捷的运维李先生学Java性能之 生存与毁灭
一.判断对象是否存活 1.引用计数算法 给对象中添加一个引用计数器,每当有一个地方引用它时,计数器就加1:当引用失效时,计数器的值就减1:任何时刻计数器为0的对象是不可能再被使用的.引用计 ...
- 云服务器部署scrapyd爬虫
Scrapyd部署爬虫项目 GitHub:https://github.com/scrapy/scrapyd API 文档:http://scrapyd.readthedocs.io/en/stabl ...
- 庐山真面目之三微服务架构Consul版本实现
庐山真面目之三微服务架构Consul版本实现 一.简介 在上一篇文章<庐山真面目之二微服务架构NGINX版本实现>中,我们已经探讨了如何搭建基于Nginx 网关的微服务 ...
- 知识全聚集 .Net Core 技术突破 | 我用C#手把手教你玩微信自动化一
知识全聚集 .Net Core 技术突破 | 我用C#手把手教你玩微信自动化一 教程 01 | 模块化方案一 02 | 模块化方案二 03 | 简单说说工作单元 其他教程预览 分库分表项目实战教程 G ...