Linux基础之sed流编辑器详解

sed(Stream Editor)是一种流编辑器,用于对文本文件进行编辑,它可以执行各种文本转换和处理任务,如替换、删除、插入等,下面是关于sed的详细解释和使用示例:

Linux基础之sed流编辑器详解
(图片来源网络,侵删)

1、基本用法

sed命令的基本语法如下:

sed [选项] '命令' 文件名

选项可以是以下之一或多个:

e:表示接下来的参数是一个sed脚本;

n:表示只输出匹配到的行;

i:表示直接修改文件内容,而不是将结果输出到标准输出。

2、常用命令

sed支持多种命令,以下是一些常用的命令及其作用:

命令 作用
s/原字符串/新字符串/g 全局替换,将文件中的所有原字符串替换为新字符串
s/原字符串/新字符串/ 替换第一个匹配的原字符串为新字符串
d 删除匹配的行
p 打印匹配的行
a新行 在匹配行的后面追加新行
i新行 在匹配行的前面插入新行
c新行 用新行替换匹配行
q 退出sed,不修改文件
!n 执行第n个脚本
=n 如果当前行是第n行,则执行该脚本
/正则表达式/p 如果当前行匹配正则表达式,则打印该行
/正则表达式/d 如果当前行匹配正则表达式,则删除该行
/正则表达式/a新行 如果当前行匹配正则表达式,则在该行的后面追加新行
/正则表达式/i新行 如果当前行匹配正则表达式,则在该行的前面插入新行
/正则表达式/c新行 如果当前行匹配正则表达式,则用新行替换该行

3、示例

以下是一些使用sed的示例:

3、1 替换文件中的某个字符串

sed 's/old_string/new_string/g' file.txt > output.txt

3、2 删除文件中的空行

sed '/^$/d' file.txt > output.txt

3、3 在文件中的每一行前添加一行注释

sed 's/^/# /' file.txt > output.txt

3、4 在文件中的每一行后添加一行注释

sed 's/$/ #/' file.txt > output.txt

原创文章,作者:未希,如若转载,请注明出处:https://www.kdun.com/ask/679012.html

(0)
未希新媒体运营
上一篇 2024-06-09 17:55
下一篇 2024-06-09 17:57

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

云产品限时秒杀。精选云产品高防服务器,20M大带宽限量抢购  >>点击进入