游乐游手机版
首页/系统平台/文章详情

Linux sed命令锁定某一行进行替换的详细技巧

时间:2026-06-24 22:11
在日常使用 Linux 系统的过程中,sed 命令堪称文本处理的利器,尤其在替换文本内容方面几乎每天都会用到。今天我们就系统梳理 sed 替换操作的几种常见模式,把这些核心用法搞明白,后续操作会更得心应手。 具体来说,你需要掌握以下几种场景: 1)仅替换首次匹配到的内容 2)全局替换所有匹配项 3)

在日常使用 Linux 系统的过程中,sed 命令堪称文本处理的利器,尤其在替换文本内容方面几乎每天都会用到。今天我们就系统梳理 sed 替换操作的几种常见模式,把这些核心用法搞明白,后续操作会更得心应手。

具体来说,你需要掌握以下几种场景:

1)仅替换首次匹配到的内容
2)全局替换所有匹配项
3)替换指定整行的内容
4)替换连续多行的内容
5)将替换结果直接写回原文件
6)一次执行多个不同的替换操作
7)利用正则表达式实现复杂替换

替换首次搜索到的内容

这是最基本的 sed 替换用法。命令格式为:

sed 's/要替换的内容/新的内容/' 要处理的文件

它的特点是只替换每一行中第一个匹配到目标字符串。举个例子,下面的命令将每行第一个小写字母 b 替换为大写 B,而该行后面其他位置的 b 则不会被改变。

linux系统中sed命令怎么用? sed锁定某一行数据进行替换的技巧

全局替换所有匹配的内容

如果你希望将文件中所有符合条件的目标都替换掉,需要在命令末尾加上 g(global 的缩写):

sed 's/要替换的内容/新的内容/g' 要处理的文件

效果立竿见影,所有小写 b 都会被替换为大写 B,每一行都不会遗漏。

linux系统中sed命令怎么用? sed锁定某一行数据进行替换的技巧

替换某一整行的内容

有时我们不需要逐字符替换,而是想把某一行整体替换成新文本。这时可以使用 c(change 的缩写)指令:

sed '行号c 新的内容' 要处理的文件

比如将第二行的内容整个改为"new test!",操作如下。

linux系统中sed命令怎么用? sed锁定某一行数据进行替换的技巧

替换多行区域的内容

如果你需要将起始行到结束行之间的整个区间替换成同一段文本,格式非常简洁:

sed '起始行号,终止行号c 新的内容' 要处理的文件

下面这个例子将第 2 行到第 6 行的所有内容统一替换为"new test!"。

linux系统中sed命令怎么用? sed锁定某一行数据进行替换的技巧

将替换结果保存到原文件

以上所有操作默认只将替换后的结果输出到屏幕,并不会修改原始文件。如果希望一次性把更改写回原文件,只需加上 -i 参数:

sed -i 's/要替换的内容/新的内容/g' 要处理的文件

linux系统中sed命令怎么用? sed锁定某一行数据进行替换的技巧

同时执行多个替换操作

多个 sed 命令可以通过 -e 参数串联起来,实现一次批量处理。下面这个例子先执行一次替换(将小写 a 变为大写 A),接着又把第二行的内容改成"new test!"。

linux系统中sed命令怎么用? sed锁定某一行数据进行替换的技巧

结合正则表达式进行替换

sed 的强大之处还在于,替换与被替换的部分都可以使用正则表达式。举例来说,想把文件中所有数字都替换成"好的",可以这样写:

sed 's/[0-9]/好的/g' testFile2.txt

linux系统中sed命令怎么用? sed锁定某一行数据进行替换的技巧

使用 sed 时有一个细节需要格外留意:输入命令之前务必确认输入法已切换为英文半角状态。从 Windows 复制命令到 Linux 终端时,经常因格式不一致导致执行报错,此时手工重新输入一遍往往最稳妥。如果嫌麻烦,至少也要把命令中的空格和最后一个字符删掉,然后重新输入空格和最后一个字符。

以上就是利用 sed 锁定特定行进行文本替换的几种实用技巧。掌握这些基础用法后,日常的文本处理工作会顺畅许多。

来源:https://www.jb51.net/LINUXjishu/744052.html
上一篇Linux系统安装RabbitMQ完整教程 下一篇CentOS 6.4安装Erlang与RabbitMQ教程
本站内容用于信息整理与展示,如有侵权或内容问题请及时联系处理。

相关推荐

补充同频道和同主题内容,方便继续浏览更多相关内容。

同类最新

继续查看同栏目最近更新的文章。

更多
微软详解Win11时间点还原 默认每24小时创建恢复点
系统平台 · 2026-06-30

微软详解Win11时间点还原 默认每24小时创建恢复点

微软今日推送了最新的 6 月可选更新,并发布博客详细解读了 Win11 全新的“时间点还原”(Point-in-time restore)功能——这一功能本质上是对系统恢复体验的一次全面升级,旨在让用户更轻松地应对电脑故障。 微软表示,面向 Windows 11 客户端用户的“时间点还原”功能现已正

Win11 26H1六月可选更新KB5095091 优化放大镜改善装机体验
系统平台 · 2026-06-30

Win11 26H1六月可选更新KB5095091 优化放大镜改善装机体验

微软今天推送了Windows 11 26H1设备的6月可选更新KB5095091,安装完成后系统版本号会升级到Build 28000 2340。值得一提的是,这次更新并非面向所有设备,而是专门为搭载高通骁龙X2系列芯片的机型准备的——包括骁龙X2 Plus、X2 Elite和X2 Elite Ext

Win11六月可选更新KB5095093修复回收站弹窗异常
系统平台 · 2026-06-30

Win11六月可选更新KB5095093修复回收站弹窗异常

微软已悄然推送Windows 11六月可选更新,编号KB5095093。本次更新覆盖两个版本:24H2用户安装后版本号升级至Build 26100 8737,而25H2用户则更新至Build 26200 8737。 本次更新并非仅是小修小补,而是带来了多项实质性新功能。下面我们就来详细解析这些更新内

苹果macOS 27 Beta2封堵Siri AI跳过候补名单漏洞
系统平台 · 2026-06-30

苹果macOS 27 Beta2封堵Siri AI跳过候补名单漏洞

科技媒体 Cult of Mac 昨日(6月23日)发布博文指出,苹果在 macOS 27 Beta 2 更新中悄然封堵了一个此前可用的后门——用户曾能通过一条终端命令绕过候补名单,直接启用新版 Siri AI,如今这一方法已失效。 简要回顾一下:在 macOS 27 Beta 1 阶段,只需在 M

微软加速Win11 25H2推送 覆盖所有符合条件家用PC
系统平台 · 2026-06-30

微软加速Win11 25H2推送 覆盖所有符合条件家用PC

近日(6月23日),科技媒体 Windows Latest 发布了一则值得关注的动态:微软已进一步扩大 Windows 11 25H2 的推送范围,所有满足硬件要求、且不受 IT 部门管理的家庭版和专业版设备,现在均可顺利接收本次更新。 此次升级有一个显著特点——采用“启用包”(eKB)方式进行推送