shell_Day04
grep程序
Linux下有文本处理三剑客 -- grep sed awk
grep:文本 行过滤工具
sed: 文本 行编辑器(流编辑器)
awk:报告生成器(做文本输出格式化)
grep
包含三个命令:grep egrep fgrep ,它们是用来进行 行模式(pattern)匹配的
egrep = gerp -E //使用扩展的正则表达式进行匹配
fgrep = fast grep //只使用文件通配符进行匹配
*grep默认使用正则表达式进行文本匹配*
grep的用法:
grep [option] ... PATTERN [filename]
-E 支持使用扩展的正则表达式(ERE)(regexp)
-P 使用perl语言的正则表达式引擎进行搜索(每一种语言的正则表示式引擎都不相同,甚至sed grep awk使用的regexp引擎也不相同)
-i 忽略大小
-v 进行反选
-o 仅仅输出匹配的内容(默认输出的是匹配到的行)
--color=auto 语法着色
-n 显示行号
-w 匹配固定的单词
PATTERN--正则表达式
作用:通过一些特殊字符,来表示一类字符内容,然后交给前面的命令来执行;如果使用特殊字符本身含义,就需要 \ 进行转义;
字符匹配
. 任意一个字符 ?
[ ] 范围内的任意一个字符
[^ ] 范围外任意一个字符
字符类:[:digit:] [:alnum:] [:alpha:] [:lower:] [:upper:] [:space:] [:punct:]
次数匹配
* 匹配前面的字符0次到无数次
\?匹配前面的字符0次到1次
\+ 匹配前面的字符1次到n次
\{m\} 配置前面的字符m次
a\{7\} aaaaaaa
\{m,n\} 匹配前面的字符m到n次
\{0,n\} 匹配前面的字符0次到n次 【0要不要?(不行!)】
\{m,\} 匹配前面的字符至少m次
位置锚定
^ 锚定行首
$ 锚定行尾
^[[:space:]]*$ 空白行
\b 锚定词首和锚定词尾
\> 锚定词尾
\< 锚定词首
\<root\> rooter
分组
abc* abcccc abc要看成一个整体
**分组特性:默认情况下,Linux系统会为分组指定变量 ,变量的表示形式 \1 \2 \3 ... (后向引用)
abbbbbxyxyxyabxy
扩展的正则表达式
【标准正则表达式中的 \ 都可以去掉】
分组 : () 后向引用 \1 \2 \3 ...
或: |
grep -E "(svm|vms)" /proc/cpuinfo //查看CPU的虚拟化功能
shell_Day04的更多相关文章
随机推荐
- Vue27 scoped样式
https://www.jianshu.com/p/d80383251fc5 1 简介 当我们在组件中写样式,vue最后会把所有样式合在一起,如果样式名称重复的话就会有问题 style标签上加scop ...
- elasticsearch之日期类型有点怪
一.Date类型简介 elasticsearch通过JSON格式来承载数据的,而JSON中是没有Date对应的数据类型的,但是elasticsearch可以通过以下三种方式处理JSON承载的Date数 ...
- Docker挂载
1.挂载的概念 预备:你需要了解docker的基本知识 docker实现了容器部署,那当我们需要配置或者查看容器生成的日志文件怎么办? docker提供了挂载机制:挂载能够将容器内的目录/文件和外部的 ...
- Redis 源码解读之 Rehash 的调用时机
Redis 源码解读之 Rehash 的调用时机 背景和问题 本文想要解决的问题 什么时机触发 Rehash 操作? 什么时机实际执行 Rehash 函数? 结论 什么时机触发 Rehash 操作? ...
- Powershell删除文本指定内容所在行以下内容
需求:批量获取文本指定内容所在行以下内容(含当前行) 解决方案:使用Powershell脚本处理 案例: 获取当前文件夹下所有txt文件 含文本"4"所在行以下内容(含当前行) 如 ...
- JZOJ 4320. 【NOIP2015模拟11.5】旅行
题目 思路 不想写了,直接使用 没错,关键就在求第 \(k\) 小的路径 上述提到堆的做法,我们可以用 \(STL\) 的优先队列来实现 只不过常数有点大~~~ \(Code\) #include&l ...
- 图论之最短路径 Floyd算法
/** 图论之最短路径 Floyd算法 */ #include<stdio.h> #include<string.h> #include<algorithm> #d ...
- LeetCode算法训练-贪心算法 455.分发饼干 376. 摆动序列 53. 最大子序和
欢迎关注个人公众号:爱喝可可牛奶 LeetCode算法训练-贪心算法 455.分发饼干 376. 摆动序列 53. 最大子序和 前置知识 贪心算法核心是找局部最优解,通过局部最优推导出全局最优 Lee ...
- Sptring cloud Alibaba Sentinel 实现熔断与限流
随着微服务的流行,服务和服务之间的稳定性变得越来越重要. Sentinel 以流量为切入点,从流量控制.熔断降级.系统负载保护等多个维度保护服务的稳定性. 作用: 服务雪崩 服务降级 服务熔断 服务限 ...
- mysql常用命令汇总
1.查询表占用空间语句:SELECT CONCAT(table_schema,'.',table_name) AS 'Table Name', table_rows AS 'Number of Row ...