Linux学习之sed多行模式

这篇具有很好参考价值的文章主要介绍了Linux学习之sed多行模式。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

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

doubleSpace.txt里边的内容如下:

goo
d
man

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

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

Linux学习之sed多行模式,Linux基础学习,linux,学习,chrome

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

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

hell
o bash hel
lo bash
EOF

Linux学习之sed多行模式,Linux基础学习,linux,学习,chrome

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输出之后,删除模式空间中第一行。依次类推,还会把文件第三四行进行处理。
Linux学习之sed多行模式,Linux基础学习,linux,学习,chrome

此文章为8月Day 12学习笔记,内容来源于极客时间《Linux 实战技能 100 讲》。文章来源地址https://www.toymoban.com/news/detail-655753.html

到了这里,关于Linux学习之sed多行模式的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Linux学习,使用sed命令对文件内的指定字符串进行替换

    一、创建一个txt文件,用于做测试 vi huawei.txt 二、替换每行第一个huawei为apple,第三个“/”后,不加参数就是只替换第一个 sed -i \\\"s/huawei/apple/\\\" huawei.txt 实现效果: 三、替换每行所有的xiaomi为iphone,第三个“/”后,加参数g就是替换所有 sed -i  \\\"s/xiaomi/iphone/g\\\" huawei.txt 实现效果

    2024年02月17日
    浏览(46)
  • 常用的 55 个 Linux Shell 脚本(包括基础案例、文件操作、实用工具、图形化、sed、gawk)

    1、第一个案例:helloworld 2、打印运行的python进程 3、获取并打印参数 4、用脚本写for循环 5、使用C语言风格的for命令 6、while循环案例 7、使用break跳出外部循环 8、使用continue命令 9、case案例 10、判断两个数是否相等 11、使用双圆括号 12、使用双方括号 13、反引号的使用 14、字

    2024年02月07日
    浏览(34)
  • Linux学习之vim四种模式初探

    vim是一个多模式,下图可以显示各个模式进行转换的关系。 vim /所在目录/文件名 ,若是已经有了文件,可以打开文件进行编辑,若是没有文件,在vim中保存之后就会有一个文件,相当于记事本里边新建一个文件。我现在就使用vim新建一个文件,然后输入内容之后再保存。

    2024年02月08日
    浏览(25)
  • Linux学习--MySQL学习之查询语句

    1:常用函数 字符函数 数学函数 日期函数 聚集函数 数学计算 if函数 case函数 2:查询结果处理 3:管理表记录

    2024年02月09日
    浏览(28)
  • linux centos安装google chrome浏览器使用headless无头模式 制作docker镜像

    chromedriver 驱动下载地址: https://npm.taobao.org/mirrors/chromedriver/ linux centos安装google chrome浏览器使用headless无头模式 用java开发爬虫,或者需要java操作控制浏览器来渲染页面,抓取页面元素,都需要在linux安装google chrome浏览器,然后就可以通过chrome driver来连接操作chrome浏览器了,

    2024年02月09日
    浏览(48)
  • Linux学习之端口、网络协议及查看端口占用情况(学习内容记录)

    端口 :设备与外界通讯交流的出口 网络协议: 网络协议是指计算机通信网络中两台计算机之间进行通信所必须共同遵守的规定或规则。 HTTP协议: HTTP协议 (超文本传输协议)是一种网络通信协议,它允许将超文本标记语言(HTML)文档从Web服务器传送到客户端的浏览器。默认

    2023年04月24日
    浏览(38)
  • linux sed常用各种操作大全

    经常使用,但有些总记不全,有时候经常查找,这次全部捋清楚做备忘,有需要的小伙伴欢迎 收藏 起来哦! 查、增、改、删一应俱全,非常详细! 目录 一、查看 查看第2行 查看第2行到第3行 查看第1行、第3行 查看从第2行开始到文件结束的内容 查看文件中包含指定字符的行

    2024年02月09日
    浏览(32)
  • Linux文本之sed流编辑器

    目录 一、sed的相关知识及其工作流程 1)sed编辑器的介绍 2)sed 流编辑器的工作过程 3)怎么解决sed命令处理容量过大,或则内容过多的而导致执行效率慢的问题? 解决方案一(推荐用法): 解决方案二: 二、sed命令格式与选项操作符 1)sed命令格式  基本操作格式:  2)

    2024年02月04日
    浏览(27)
  • 使用 sed 命令删除 Linux 文件中的行

    在 Linux 系统中,sed(流编辑器)是一个功能强大的命令行工具,它可以用于对文本文件进行处理和转换。其中一个常见的用途是删除文件中的特定行。本文将介绍如何使用 sed 命令删除文件中的行,并提供相应的源代码示例。 要使用 sed 命令删除文件中的行,可以使用以下的

    2024年02月04日
    浏览(39)
  • Linux文本处理工具sed(流编辑器)

    sed是一种流编辑器,它一次处理一行内容。 处理时,把当前处理的行存储在临时缓冲区(模式空间)中,接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的内容送到屏幕。接着处理下一行,这样不断重复直到文件末尾。 文件内容并没有改变 ,除非你使用重定向存

    2024年02月12日
    浏览(49)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包