Linux学习之sed多行模式

news2024/11/27 3:56:11

N将下一行加入到模式空间
D删除模式空间中的第一个字符到第一个换行符
P打印模式空间中的第一个字符到第一个换行符

doubleSpace.txt里边的内容如下:

goo
d
man

使用下边的命令可以实现把上边对应的内容放到doubleSpace.txt

echo 'goo' >> doubleSpace.txt
echo 'd' >> doubleSpace.txt
echo 'man' >> doubleSpace.txt

在这里插入图片描述

如果想要把good显示成一行的话,可以使用sed 'N;s/\n//' doubleSpace.txt,需要注意good之间有换行符\n,虽然N命令可以读取多行命令到模式空间里边,但是不能把换行符去掉。
在这里插入图片描述
其实也可以使用元字符中的.来匹配\n,比如sed 'N;s/goo.d/good/' doubleSpace.txt也可以把good显示成一行。
在这里插入图片描述

在命令行里边输入cat << EOF >> b.txt,然后依次输入下边的内容:

hell
o bash hel
lo bash
EOF

在这里插入图片描述

sed 'N;s/\n//g;s/hello bash/hello sed\n/;P;D' b.txtN先把文件中第一二行放到模式空间里边,然后把\n替换成空字符,之后再把hello bash替换成hello sed\n输出之后,删除模式空间中第一行。然后N把文件中第二三行放到模式空间里边,然后把\n替换成空字符,之后再把hello bash替换成hello sed\n输出之后,删除模式空间中第一行。依次类推,还会把文件第三四行进行处理。
在这里插入图片描述

此文章为8月Day 12学习笔记,内容来源于极客时间《Linux 实战技能 100 讲》。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/867358.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

无代码集成励销云CRM连接更多应用

场景描述&#xff1a; 基于励销云的开放API&#xff0c;实现无代码集成连接励销云与其它应用。通过Aboter可轻松搭建业务自动化流程&#xff0c;实现多个应用之间的数据连接。 接口能力&#xff1a; 用户模块业务模块拜访签到模块公海客户模块联系人模块合同模块客户模块任务…

EVE-NG 隐藏没有镜像的模板

eve-ng 默认情况下&#xff0c;在添加node时&#xff0c;会列出所有的模板&#xff0c;这样用着很不方便。 通过以下方式&#xff0c;可以使没有设备的模板不可见 cp /opt/unetlab/html/includes/config.php.distribution /opt/unetlab/html/includes/config.php 如下图&#…

大数据面试题:说下Spark中的Transform和Action,为什么Spark要把操作分为Transform和Action?

面试题来源&#xff1a; 《大数据面试题 V4.0》 大数据面试题V3.0&#xff0c;523道题&#xff0c;679页&#xff0c;46w字 可回答&#xff1a;Spark常见的算子介绍一下 参考答案&#xff1a; 我们先来看下Spark算子的作用&#xff1a; 下图描述了Spark在运行转换中通过算…

tomcat服务七层搭建动态页面查看

一个服务器多实例复制完成 配置tomcat多实例的环境变量 vim /etc/profile.d/tomcat.sh配置tomcat1和tomcat2的环境变量 进入tomcat1修改配置 测试通信端口是否正常 连接正常 toncat 2 配置修改 修改这三个 端口配置修改完成 修改tomcat1 shudown 分别把启动文件指向tomcat1…

【Linux】进程信号之信号的处理

进程信号 三 一、信号的处理时机二、内核态与用户态1、内核态与用户态的转化2、重谈进程地址空间 三、信号的处理1、一般信号的处理流程2、捕捉信号的处理流程3、信号捕捉函数sigaction 一、信号的处理时机 在前面我们讲过信号产生和保存以后&#xff0c;我们知道进程对于产生…

YOLOv5、YOLOv8改进: GSConv+Slim Neck

论文题目&#xff1a;Slim-neck by GSConv: A better design paradigm of detector architectures for autonomous vehicles 论文&#xff1a;https://arxiv.org/abs/2206.02424 代码&#xff1a;https://github.com/AlanLi1997/Slim-neck-by-GSConv 在计算机视觉领域&#x…

YOLOv8“炼丹“之扑克牌识别

最近沉迷炼丹, 效果图: 框架Ultralytics YOLOv8 来自GitHub的介绍: Ultralytics YOLOv8 is a cutting-edge, state-of-the-art (SOTA) model that builds upon the success of previous YOLO versions and introduces new features and improvements to further boost pe…

Centos7源码安装redis

1、下载redis Index of /releases/ 2、解压redis tar -xvf redis-6.2.9.tar.gz 3、进入解压后的目录 cd redis-6.2.9/4、指定内存分配器为 libc make MALLOClibc 5、进入src目录&#xff0c;安装 cd src && make install6、运行 ./redis-server 7、添加开机…

IIC延时函数

别人家的程序 void i2c_Start(void) {OLED_I2C_SDA_1(); //SDA 总线置1OLED_I2C_SCL_1(); //SCL 总线置1i2c_Delay(); //延时信号OLED_I2C_SDA_0(); //置 0 i2c_Delay();OLED_I2C_SCL_0(); //SCL 置0i2c_Delay(); }延时函数 static void i2c_Delay(void) {uint8_t…

企业时代下的汽车4S店形势分析

据网上数据显示&#xff0c;2022年约有2000家汽车4S店闭店退网&#xff0c;这一数据不由令人惊叹&#xff01; 疫情放开后&#xff0c;原以为汽车经销商的春天也即将来临&#xff0c;可它们有些已经死在了半路上。 2023年伊始&#xff0c;经销商大戏以一则破产消息开幕——浙…

NR700 —基础知识

01 中国5G频段分布及700M频谱 中国运营商频段分布&#xff1a; 不同频段的无线电波的特征&#xff1a; 700M网络因其低频特性&#xff0c;有着极佳的覆盖能力和穿透能力&#xff0c;但同时相对运营商已有的高频网络有着明显的性能差距。因此700M网络更适合用于底层网络深度覆盖…

mac harbor的安装

harbor的安装 为什么要整这个呢&#xff0c;因为我在学习k8s&#xff0c;但是需要一个自己的镜像仓库。于是&#xff0c;最开始想到的就是在本地直接部署一个&#xff0c;还比较安全、快速。 直接下载了官方的项目&#xff0c;运行脚本发现出了异常&#xff0c;这种异常我已经…

帮群里一位留学生订机票,省了2.2万元

注&#xff1a;此篇文章为峰哥环游世界番外篇&#xff0c;我会记录很多我认为值得分享的图文。在环游世界交流群里的同学记得扫描下方二维码直接观看&#xff0c;不要付费&#xff0c;具体事宜可以看贴&#xff1a;付费文章说明&#xff01; 想进一步了解我环游世界的故事&…

React 之 Suspense和lazy

一. Suspense 参考链接&#xff1a;https://react.docschina.org/reference/react/Suspense suspense&#xff1a;n. 焦虑、悬念 <Suspense> 允许你显示一个退路方案&#xff08;fallback&#xff09;直到它的所有子组件完成加载。 <Suspense fallback{<Loadin…

history记录日期时间和日志记录操作

history命令能查看到操作日期和时间的配置方法&#xff1a; 1&#xff09;在/etc/profile文件中添加一行&#xff1a; export HISTTIMEFORMAT"%F %T whoami " 2&#xff09;保存后&#xff0c;执行加载命令&#xff1a; source /etc/profile 3&#xff09;然后检…

“编写一次,无限应用:深入理解C++模板“

&#x1f680;write in front&#x1f680; &#x1f4dc;所属专栏&#xff1a; C学习 &#x1f6f0;️博客主页&#xff1a;睿睿的博客主页 &#x1f6f0;️代码仓库&#xff1a;&#x1f389;VS2022_C语言仓库 &#x1f3a1;您的点赞、关注、收藏、评论&#xff0c;是对我最大…

E8—Aurora 64/66B ip实现GTX与GTY的40G通信2023-08-12

1. 场景 要在贴有K7系列FPGA芯片的板子和贴有KU系列FPGA芯片的板子之间通过光模块光纤QSFP实现40G的高速通信。可以选择的方式有多种&#xff0c;但本质的方案就一种&#xff0c;即实现4路GTX与GTY之间的通信。可以选择8B/10B编码通过GT IP核实现&#xff0c;而不能通过Aurora…

深度学习(36)—— 图神经网络GNN(1)

深度学习&#xff08;36&#xff09;—— 图神经网络GNN&#xff08;1&#xff09; 这个系列的所有代码我都会放在git上&#xff0c;欢迎造访 文章目录 深度学习&#xff08;36&#xff09;—— 图神经网络GNN&#xff08;1&#xff09;1. 基础知识2.使用场景3. 图卷积神经网…

基于kubeasz部署高可用k8s集群

在部署高可用k8s之前&#xff0c;我们先来说一说单master架构和多master架构&#xff0c;以及多master架构中各组件工作逻辑 k8s单master架构 提示&#xff1a;这种单master节点的架构&#xff0c;通常只用于测试环境&#xff0c;生产环境绝对不允许&#xff1b;这是因为k8s集群…

C++学习笔记——从面试题出发学习C++

C学习笔记——从面试题出发学习C C学习笔记——从面试题出发学习C1. 成员函数的重写、重载和隐藏的区别&#xff1f;2. 构造函数可以是虚函数吗&#xff1f;内联函数可以是虚函数吗&#xff1f;析构函数为什么一定要是虚函数&#xff1f;3. 解释左值/右值、左值/右值引用、std:…