news 2026/6/8 7:00:12

13、Sed脚本高级流控制命令详解

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
13、Sed脚本高级流控制命令详解

Sed脚本高级流控制命令详解

1. 输入收集与处理脚本

在编写脚本时,有时需要收集输入并在匹配到特定模式后进行处理。例如,有一个脚本展示了收集输入并保存,直到匹配到另一个模式的机制。这个脚本中,第一个过程不会执行到底,因为此时还不需要输出;而第二个过程会执行到底,在开始收集下一段的行之前,清空模式空间和保持空间。

同时,该脚本还说明了如何使用寻址来设置排他性地址,即一行必须匹配其中一个地址。通过设置地址,可以处理输入中的各种异常情况,从而提高脚本的可靠性。

比如,若输入文件的最后一行不是空行,之前收集的自最后一个空行以来的所有行都不会输出。为解决这个问题,可以制造一个空行,让后续脚本中的空行处理程序能够匹配。具体做法如下:

${ /^$/!{ H s/.*// } }

这个程序必须放在之前展示的两个程序之前。寻址符号“$”仅匹配文件的最后一行。在这个程序内部,会测试非空行。如果是空白行,则无需处理;如果当前行非空,则将其追加到保持空间,然后使用替换命令在模式空间中创建一个空行。退出这个程序后,模式空间中会有一个空行,它会匹配后续处理空行的程序,该程序会添加HTML段落代码并输出段落。

2. 高级流控制命令

在sed的正常流控制中,有两个命令可以控制脚本的执行部分和时间,即分支(b)和测试(t)命令。这两个命令可以将脚本中的控制权转移到包含指定标签的行。如果未指定标签,控制权将传递到脚本的末尾。分支命令无条件转移控制权,而测试命令是条件转移,仅在替换命令更改了当前行时才会发生。

2.1 标签

标签是最多由七个字符组成的序列(

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/7 12:40:11

18、条件语句、循环和数组编程全解析

条件语句、循环和数组编程全解析 在编程中,条件语句、循环结构以及数组的运用是非常重要的基础内容。下面我们将深入探讨这些概念,并通过具体的代码示例来详细说明。 输入循环示例 首先,我们来看一个有趣的主输入循环示例,这个示例会提示用户输入信息,并从标准输入读取…

作者头像 李华
网站建设 2026/6/8 5:32:19

解锁PS3隐藏潜能:webMAN MOD终极功能指南

你是否曾经想过,那台尘封已久的PS3娱乐设备其实蕴藏着远超你想象的强大能力?今天,就让我们一起来探索这款被誉为PS3玩家终极神器的webMAN MOD,看看它是如何将你的游戏主机变成一个功能完整的娱乐中心。 【免费下载链接】webMAN-MO…

作者头像 李华
网站建设 2026/6/8 2:07:40

AI绘画革命:Stable Diffusion实战从入门到精通

AI绘画革命:Stable Diffusion实战从入门到精通 【免费下载链接】stylegan StyleGAN - Official TensorFlow Implementation 项目地址: https://gitcode.com/gh_mirrors/st/stylegan 你是否在AI绘画入门时遇到环境配置复杂、生成效果不理想、参数调优困难等问…

作者头像 李华
网站建设 2026/6/7 18:55:26

AutoGPT开源社区活跃度分析:GitHub Star趋势与贡献者画像

AutoGPT开源社区活跃度分析:GitHub Star趋势与贡献者画像 在人工智能技术持续进化的今天,一个引人注目的转变正在发生——AI正从“被动应答”走向“主动执行”。过去我们习惯于向模型提问:“如何学习Python?”然后逐条接收建议&am…

作者头像 李华
网站建设 2026/6/5 23:38:11

3个实战技巧让F5-TTS在移动端内存占用直降60%

3个实战技巧让F5-TTS在移动端内存占用直降60% 【免费下载链接】F5-TTS Official code for "F5-TTS: A Fairytaler that Fakes Fluent and Faithful Speech with Flow Matching" 项目地址: https://gitcode.com/gh_mirrors/f5/F5-TTS "手机发烫、应用闪退…

作者头像 李华
网站建设 2026/6/3 15:22:09

Langchain-Chatchat高可用集群搭建方案

Langchain-Chatchat高可用集群搭建方案 在企业对数据安全与系统稳定性要求日益提升的今天,传统的云端大语言模型(LLM)服务正面临严峻挑战。尽管公有云API提供了便捷的接入方式,但其固有的网络延迟、隐私泄露风险和不可控的服务中断…

作者头像 李华