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的更多相关文章
随机推荐
- 完整工作流整合方案,自定义配置,Java+Vue+Activiti@附配套文档
前言 activiti工作流引擎项目,企业erp.oa.hr.crm等企事业办公系统轻松落地,一套完整并且实际运用在多套项目中的案例,满足日常业务流程审批需求. 一.项目形式 springboot+v ...
- 使用Kubernetes中的Nginx来改善第三方服务的可靠性和延迟
使用Kubernetes中的Nginx来改善第三方服务的可靠性和延迟 译自:How we improved third-party availability and latency with Ngin ...
- Opengl ES之踩坑记
前因 最近在尝试使用Opengl ES实现一些LUT滤镜效果,在实现这些滤镜效果的时候遇到一些兼容性的坑,踩过这些坑后我希望把这几个坑分享给读者朋友们, 希望同在学习Opengl ES的朋友们能少走弯 ...
- Javaweb-1note C/S B/S HTML CSS javaScript一点点语法
------------恢复内容开始------------ Java web概念: *javaweb:使用java语言开发基于互联网的项目 *软件架构: 1.c/s:Clienr/Server 客户 ...
- The Missing Semester - 第一讲 学习笔记
The Missing Semester - 第一讲 学习笔记 第一讲 课程概览与 shell 课程视频地址: https://www.bilibili.com/video/BV1Eo4y1d7KZ/ ...
- SpringMVC的类型转换器与RESTFUL集成
Spring Mvc自定义的数据类型转换器: 一:Date 1.创建DateConverter 类,并实现Converter接口:需要指定泛型<S,T> package com.south ...
- spark数据清洗
spark数据清洗 1.Scala常用语法 运用maven创建项目,需要导入如下依赖: <dependency> <groupId>org.apache.spark</g ...
- JZOJ 5062. 【GDOI2017第二轮模拟day1】航海舰队
\(\text{Solution}\) 这还是 [Lydsy2017省队十连测] 的题 不得不说 \(FFT\) 在字符串匹配中的妙啊! 前面做了道一维的题,现在这是二维的 从题目入手,不考虑可不可达 ...
- 【USACO 2021 US Open, Platinum】United Cows of Farmer John
\(\text{Solution}\) 简要的口胡 线段树维护合法左端点数量 正序枚举 \(i\),将其视为右端点,去除不合法的左端点,统计贡献 再将其视为中间点,由它产生的左端点在线段树上区间加 注 ...
- java-jdbc-druid
0.简介 Java数据库连接,(Java Database Connectivity,简称JDBC)是Java语言中用来规范客户端程序如何来访问数据库的应用程序接口,提供了诸如查询和更新数据库中数据的 ...