位置: 编程技术 - 正文

linux sed 多行处理详细总结(sed 处理多行)

编辑:rootadmin

推荐整理分享linux sed 多行处理详细总结(sed 处理多行),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:sed执行多个命令,sed 处理多行,linux sed 行尾,linux 多行合并成一行,sed 处理多行,linux echo 多行,linux多行输入,linux多行删除,内容如对您有帮助,希望把文章链接给更多的朋友!

在正常情况下,sed将待处理的行读入模式空间,脚本中的命令就一条接着一条的对该行进行处理,直到脚本执行完毕,然后该行被输出,模式空间请空;然后重复刚才的动作,文件中的新的一行被读入,直到文件处理完备。但是,各种各样的原因,比如用户希望在某个条件下脚本中的某个命令被执行,或者希望模式空间得到保留以便下一次的处理,都有可能使得sed在处理文件的时候不按照正常的流程来进行。这个时候,sed设置了一些高级命令来满足用户的要求。如果想要学习sed的高级命令,首先要了解如下两个缓存区:

1、模式空间(pattern space)的定义:模式空间就是一个缓存区,保存sed刚刚从输入端读取的。2、暂存空间(hold space)的定义:暂存空间就是在处理模式空间数据的时候,临时缓存数据用的。

还有几个命令参数:

g: 将hold space中的内容拷贝到pattern space中,原来pattern space里的内容清除G: 将hold space中的内容append到pattern spacen后h: 将pattern space中的内容拷贝到hold space中,原来的hold space里的内容被清除H: 将pattern space中的内容append到hold spacen后x: 交换pattern space和hold space的内容

linux sed 多行处理详细总结(sed 处理多行)

比如咱们想要倒排一个文件的内容,文件如下:

执行如下命令:

下面咱们逐步理解上面的执行过程

一、让咱们来分析一下如下三条命令:

2,$G:从第二行到最后一行执行G命令 h:执行h命令 $!d:删除除了最后一行的所有行

二、具体的操作

扫描到第一行 将1-line放入模式空间;此时模式空间还是1-line; 直接执行h命令,此时暂存空间是1-line; 执行d命令,删除了模式空间仅有的一行数据,删除之后,模式空间是空的 扫描到第二行 将2-line放入模式空间 执行G命令,将暂存空间的1-line添加到模式空间2-line的后面,此时模式空间是2-linen1-line; 执行h命令,此时暂存空间的内容是2-linen1-line; 执行d命令,模式空间被清空 扫描到第三行 将3-line放入模式空间, 执行G命令,将暂存空间的2-linen1-line添加到模式空间3-line的后面,此时模式空间是3-linen2-linen1-line; 执行h命令,此时暂存空间的内容是3-linen2-linen1-line; 不执行$!d; 直接输出 3-linen2-linen1-line

当然,命令:sed '1!G;h;$!d' tmp 也能有这个效果。

linux 删除换行符的方法小结 今天需要删除文件里面的换行符,比如有一个文件a.txt:1,2,,5,,2,,5,,2,,5,,2,,5,,2,,5,、使用vim删除换行符vim输入命令:%s/n//g2、使用sed命令,

Linux如何通过命令查看日志文件的某几行(中间几行或最后几行) 【一】从第行开始,显示行。即显示~行catfilename|tail-n+|head-n【二】显示行到行catfilename|head-n|tail-n+*注意两种方法的顺序分

linux基础命令有哪些? linux基础命令使用方法 本期介绍linux基础命令的使用1、用who命令显示当前Linux系统的用户名2、使用下列命令显示有关计算机系统信息:uname(显示操作系统的名称),unamen(显示系

标签: sed 处理多行

本文链接地址:https://www.jiuchutong.com/biancheng/364001.html 转载请保留说明!

上一篇:linux查看文件的后几行(文件查看 如何显示最后几行 ,某几行)(Linux查看文件的大小)

下一篇:linux 删除换行符的方法小结(linux 去除换行)

  • 库存股是什么科目的备抵
  • 视同销售填在申报表哪一栏
  • 服装类发票可以做账吗
  • 税法收入确认的时间
  • 技术支持费用取费依据
  • 建筑工程公司收入成本怎么结转
  • 增值税发票税控开票软件打不开
  • 员工本地住宿费会计分录
  • 股票印花税最新政策2023怎么算
  • 增值税进项大于销项,要全部认证吗
  • 支付运费价税合计
  • 未开票收入怎么做账
  • 营改增后计税依据
  • 劳务派遣差额部分可以开专票吗
  • 工业企业和其他企业经营的对象
  • 库管和车间工人哪个好
  • bios如何解除电脑密码
  • 银行手续费扣除比例
  • 软件 摊销
  • 计划成本法存货成本的确定
  • win7开机拨号取消
  • linux 分享文件
  • php生成html
  • PHP:mcrypt_generic_init()的用法_Mcrypt函数
  • npm无法将npm项识别为
  • 机器学习中的数据预处理方法与步骤
  • vue process.env.node_env
  • Yii2 hasOne(), hasMany() 实现三表关联的方法(两种)
  • 小程序新版本
  • php与java区别
  • typescript中文
  • 营业税金及附加会计分录
  • 农产品免税发票可以抵扣增值税吗
  • 人力资源公司财务工作心得与感悟
  • 同业代付业务会计核算
  • 公司注册资金表格模板
  • 公司以前没有内账
  • 技术转移转化是干什么的
  • 企业所得税会计利润总额计算公式
  • sql server怎么用sql语句创建数据库
  • mysql数据库命名 可以用-吗
  • 建筑施工仪器设备有哪些
  • 营业外支出账户核算的主要内容有
  • 增值税普通发票税率
  • 房租已付未收到发票
  • 施工仪器的主要类别
  • 事业单位会计的特点
  • 出口退税申报需要手动录入什么信息呢
  • 保函保证金怎么入账
  • 工会经费保留整数吗
  • 工程施工合同如何核算收入成本?
  • 防伪税控开票系统SOAP服务端
  • 什么叫短期投资
  • 旅游业营业税税率
  • 次年发放的奖金怎么入账
  • 固定资产卡片录入日期怎么改
  • 会计利润的计算公式是
  • 红字发票怎样记账
  • iis6设置
  • WIN7系统屏幕亮度哪里设置
  • windowsxp教程
  • 为什么ibooks无法使用
  • 如何利用批处理实现更改ip修改
  • system idle process是什么进程(CPU的空闲率)
  • win7无法打开此文件
  • ubuntu系统查看mac地址命令
  • qq远程桌面操作
  • win7在开始菜单右击
  • iis7.0是什么
  • cocos2dx4.0教程
  • shell基础教程
  • 根据当前目录下的文件
  • unity 子弹效果 粒子
  • nodejs调用打印机驱动
  • javascript概述及作用
  • bootstrap要学到什么程度
  • python3 编码转换
  • 非正常户转为正常户申请怎样写
  • 查询完毕
  • 我国个人所得税起征点
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设