正则表达式之grep与sed用法
一、grep和egrep的用法
(一)grep用法
grep是根据给出的条件查找特定的字符。用单引号查找指定的单词,图1.1。grep后面可选项用**-n显示查找的行数;-i不区分大小写查找图1.2 。-v**是反选指定要查找的内容。图1.3
图1.1 查找到的会用红色表示出来

图1.2

图1.3

利用中括号**“[ ]”查找集合字符。比如想要查找“short和shirt”两个单词,我们发现这两个单词不同之处在于“o和i”,可以将[oi]放在中括号里查找。图1.4
图1.4

若要查找某个单词但是又不想里面出现某个字符可以用“[^]”表示反向选择,图1.5。
图1.5

若要想查找以指定的字符为开头的时候要:“1”**在括号外面加箭头。图1.6
图1.6

利用{ }查找指定次数的字符。在使用时需要打上转义符号。
图1.7

4.egrep作为grep的拓展正则表达式,grep只能使用基本的正则表达式,而egrep则需要结合扩展的正则表达式一起使用。
+:作用是重复一个或者一个以上的前一个字符。
图1.8

?:作用是对前一个字符进行查询,也可以理解为前一个字符是否存在。
图1.9

|:作用是表达或的意思。
图1.10

():作用是查找括号中符合条件的字符串。
图1.11

()+:作用是辨别括号中的多个重复组。
图1.12

如果在文章中加入其它字符egrep是无法识别的。

(二)sed用法
sed作为一个十分强大的文本编辑工具,可以对文本进行筛选、删除、添加等操作,但是其是在内存中进行操作。
显示,一般的我们sed显示内容用:sed -n ‘p’ 路径来显示内容。如果说你想查看其中一行或几行则sed -n ‘3,5p’ 路径,来查看。
如果想查看奇数行或偶数行则sed -n ‘p;n’ 路径或sed -n ‘n;p’ 路径来显示。
图1.1 sed用来显示全文或部分文章

想要从指定行开始查看奇偶数行这里要注意一下如sed -n ‘3,5{p;n}’ 路径从第三行开始算作第一行并且会执行完print和not print才会结束。
图2.2 sed查看奇偶行

查看指定字符,sed -n ‘/字符/p’ 路径。如果想要查看从指定行开始到第一个出现指定字符的所在行就用,sed -n ‘指定行开始,/指定字符/p’ 路径这种形式。
图2.3 sed查看指定字符所在行

显示指定的行号:sed -n ‘指定的行号,/指定的字符/=’ 路径形式。
图2.4 sed查看行数

要想输出包含某个指定字符的行:sed -n ‘/反撇号<反撇号指定字符>/p’ 路径。
图2.5 sed查看指定字符所在行

删除内容,删除某行:nl 路径 | sed ‘某行d’,删除连续几行:nl 路径 | sed '行号1~行号2’
图2.6 sed删除行

删除指定字符所在行:nl路径 | sed ‘/指定字符/d’。
图2.7 sed删除指定字符所在行

替换内容,替换每行第一个指定字符:sed ‘s/指定字符/替换字符/’ 路径。
图2.8 sed偷换字符

替换每行第二个指定字符:sed ‘s/指定字符/替换字符’ 路径。
将所有指定字符替换:sed ‘s/指定字符/替换字符/g’ 路径。
图2.9 sed替换全体指定字符

将指定字符进行删除(替换为空串):sed 's/指定字符/ /'路径。
图2.10 sed将指定字符替换成空串

在每行行首添加#:sed ‘s/^/#’ 路径。
图2.21 行首添加#号

在每行指定字符前添加#:sed ‘/the/s/^/#/’ 路径。
图2.22 在指定字符前添加#

5.迁移稳文本时需要用到H复制到剪切板,g和G将剪贴板中的数据覆盖或追加至指定的行。w,保存为文件。r,读取指定文件。a,追加指定内容。
图2.23

图2.24

图2.25

图2.26

二、总结
正则表达式需要记住的点非常多,这里只是整理了grep和sed的一些常用用法,在后续还会更新awk用法与sort和uniqe用法。希望喜欢我博客的大佬们点赞哦!
————————————————
版权声明:本文为CSDN博主「QwQNightmare」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/QwQNightmare/article/details/103374240
正则表达式之grep与sed用法的更多相关文章
- 正则表达式与grep和sed
正则表达式与grep和sed 目录 1.正则表达式 2.grep 3.sed grep和sed需要正则表达式,我们需要注意的正则表达式与通配符用法的区分. 1.正则表达式 REGEXP,正则表达式:由 ...
- Linux正则表达式,grep总结,sed用法
原文: 1.sed 流编辑器,实现对文字的增删改替换查(过滤.取行),能同时处理多个文件多行的内容,可以不对原文件改动,把整个文件 输入到屏幕,可以把只匹配到模式的内容输入到屏幕上.还可以对原文件 ...
- Linux基础-正则表达式整理---------------grep、sed、awk
目录: Ⅰ:正则表达式 Ⅱ:作业 Ⅰ:正则表达式 正则就是用一些具有特殊含义的符号组合到一起(称为正则表达式)来描述字符或者字符串的方法.或者说:正则就是用来描述一类事物的规则. 在lin ...
- Linux基础之-正则表达式(grep,sed,awk)
一. 正则表达式 正则表达式,又称规则表达式.(英语:Regular Expression,在代码中常简写为regex.regexp或RE),计算机科学的一个概念.正则表达式是对字符串操作的一种逻辑公 ...
- 正则表达式(grep,awk,sed)和通配符
1. 正则表达式 1. 什么是正则表达式? 正则表达式就是为了处理大量的字符串而定义的一套规则和方法. 通过定义的这些特殊符号的辅助,系统管理员就可以快速过滤,替换或输出需要的字符串. Linux正则 ...
- 正则表达式利用grep和sed处理日志内容,获取所需的内容
app.log文件内容: 2014-09-11 00:00:01,516 INFO [com.tt.bb.thread.Control] - Socket连接:/182.105.83.33:53217 ...
- grep、sed、awk、perl、js、vim等对正则表达式的支持的差别
grep.sed.awk.perl等对正则表达式的支持的差别 grep 2.5.1 egrep 2.5.1 sed 3.02 sed 4.07 awk 3.1.1 perl 5.8.0 vim 6.1 ...
- Linux文本三剑客超详细教程---grep、sed、awk
awk.grep.sed是linux操作文本的三大利器,合称文本三剑客,也是必须掌握的linux命令之一.三者的功能都是处理文本,但侧重点各不相同,其中属awk功能最强大,但也最复杂.grep更适合单 ...
- linux四剑客-grep/find/sed/awk/详解-技术流ken
四剑客简介 相信接触过linux的大家应该都学过或者听过四剑客,即sed,grep,find,awk,有人对其望而生畏,有人对其爱不释手.参数太多,变化形式太多,使用超级灵活,让一部分人难以适从继而望 ...
- 【Linux】linux中文本操作利器grep,awk,sed
grep命令 grep(global search regular expression)是一种强大的文本搜索工具,它可以使用正则表达式搜索文本,并把匹配的行打印出来.平时搜索文本中内容的时候是非常方 ...
随机推荐
- Solution -「ARC 103B」Robot Arms
Description Link. 给定 \(n\) 组坐标.构造长度为 \(m\) 的序列 \(\{c_n\}\) 和 \(n\) 组包含 LRUD 的路径,满足对于每一组坐标: \(c_i\) 表 ...
- 噢耶!字节后端Offer,拿到了
很多同学反馈多搞点面经,说来就来! 今天分享一位拿到字节跳动实习Offer的面经,没错,Java转Go. 别问我选Java还是选Go,成年人不做选择题.先搞定一个语言,再学第二语言从来不是难事. 无论 ...
- IDEA2019 Debug傻瓜式上手教程
Step Into (F7):步入,如果当前行有方法,可以进入方法内部,一般用于进入自定义方法内,不会进入官方类库的方法. Force Step Into (Alt + Shift + F7) ...
- Hosts映射
Hosts映射 思考:如何通过主机名能够找到(ping)某个linux系统? 前言 Hosts:是一个文本文件,用来记录IP和Hostname的映射关系 DNS:是互联网上作为域名和IP地址映射的一个 ...
- CSP-J 2022 游记
10.9 早上睡到 7:00. 上午继续学习 Vim,学习哈希表. 10.11 白天线段树,区间加从六参改成四参就过了 晚上模拟赛,感觉良好 10.16 膜你赛,std变量命名毒瘤. 想用 geogb ...
- spring-boot集成hikari多数据源
maven依赖 <dependency> <groupId>com.zaxxer</groupId> <artifactId>HikariCP</ ...
- Golang后端大厂面经!
大家好,我是阳哥.专注Go语言的学习经验分享和就业辅导. 之前分享了很多 Golang 后端的大厂面经,不少同学在催更新,这篇给大家继续安排. 本文来自一位同学的投稿,面试深X服的面经汇总,前半部分主 ...
- nginx 配置 proxy_next_upstream 会出现未预期 502 错误问题排查
当使用nginx代理多个网关实例时, 当被请求服务的get 接口异常时,如 error timeout invalid_header http_500 http_502 http_503 http_5 ...
- Linux Media 子系统链路分析
一.概述 Media 子系统是一个用于处理多媒体设备的框架,它提供了一组 API 和驱动程序,用于管理和控制视频.音频和其他多媒体设备.而 V4L2 是 media 子系统的一部分,用于处理视频相关的 ...
- SNN_文献阅读_Effective and Efficient Computation with Multiple-timescaleSpiking Recurrent Neural Networks
Adaptive SRNN 基于多时间尺度脉冲循环神经网络的高效计算(SRNN) 中心思想: 使用替代梯度进行训练,克服SNN中梯度不连续的问题. 在PyTorch中直接使用BPTT进行训练. 结构 ...