点击关注 更多精彩
Linux系统
sed命令解析
sed(Stream EDitor)是 Linux/Unix 下的流式文本编辑器,核心特点是非交互式逐行处理文本,支持增、删、改、查等操作,默认不修改原文件,结果输出到标准输出,是运维和脚本自动化的高频工具。

一、常用动作指令

二、行号与匹配条件
条件写法及含义
'p' 打印所有行
'1p' 打印第1行
'2,4p' 打印第2~4行
'2p;4p' 打印第2行和第4行
'1~2p' 打印奇数行
'2~2p' 打印偶数行
'/root/d' 删除包含root的行
'/root/!d' 删除不包含root的行
'$d' 删除最后一行
'/^$/d' 删除空行
三、替换操作详解
基本格式
sed 's/old/new/标志' file

分隔符可替换
sed 's#/old/path#/new/path#g' file
# 适合路径替换
四、插入、追加、替换整行

1.多行文本处理
sed '2cLine1\nLine2' file # 用\n换行
2. 替换指定行的匹配内容
仅替换第2行的第一个2017为6666
sed '2s/2017/6666/' shu.txt
替换第3~5行的所有old为new
sed '3,5s/old/new/g' file
3.修改文件路径时,替换分隔符
当替换内容包含 /(如路径),可改用 |、# 等作为分隔符,避免冲突:
sed 's|/etc/oldpath|/etc/newpath|g' file
五、拓展知识点
常用选项

2. 多个指令组合
用 -e 执行多个编辑命令:
sed -e 's/old/new/' -e '/error/d' file
用 ; 分隔命令(同条件下的多操作):
sed 's/old/new/; /error/d' file # 等价写法
3. 使用正则表达式匹配
sed -n '/^[0-9]/p' file # 打印以数字开头的行
sed '/^$/d' file # 删除空行
sed '/^#/d' file # 删除注释行
删除配置文件中注释行和空行:
sed -i '/^#/d;/^$/d' nginx.conf
4. 引用shell变量
old="abc"
new="xyz"
sed "s/$old/$new/g" file # 使用双引号
5. 写入文件
sed -n '2,4w output.txt' file # 将2~4行写入output.txt
6. 打印行号
sed -n '=; 2,4p' file # 先打印行号,再打印2~4行
7. 退出指令
sed '5q' file # 打印前5行后退出
8.提取日志中特定时间段的内容:
sed -n '/2026-05-08 10:00:00/,/2026-05-08 11:00:00/p' app.log
9.直接使用 -i 会修改原文件,建议先备份:
sed -i.bak 's/old/new/g' file
# 修改文件,并生成file.bak备份文件
10. 模式空间与保持空间
sed 处理文本的核心是模式空间(Pattern Space)和保持空间(Hold Space),通过 h/H、g/G、x 等命令实现多行数据暂存与交换,常用于复杂文本处理(如跨行匹配、数据暂存)。
h:将模式空间内容复制到保持空间;
G:将保持空间内容追加到模式空间;
x:交换模式空间与保持空间内容。
六、常见面试/考试题示例
删除所有空行
sed '/^$/d' file
删除不含root的行
sed '/root/!d' file
将每行第一个数字替换为#
sed 's/[0-9]/#/' file
打印第10行
sed -n '10p' file
在匹配行后追加内容
sed '/pattern/a\new line' file
修改文件并备份
sed -i.bak 's/old/new/g' file
给所有以空格/制表符开头的行添加#注释(批量注释配置文件、脚本文件。)
sed -r 's/^[ \t]*/#/' config.txt
sed:文本流处理工具,逐行处理文本。
-r启用扩展正则表达式,让正则写法更简洁,不用加多余反斜杠。
s/原内容/新内容/
替换命令固定格式:
s = substitute(替换)
三个 / 是分隔符
^[ \t]*
^ 匹配行开头
[ \t] 匹配空格 或 制表符(Tab)
* 匹配前面内容 0 次或多次
合起来意思:匹配一行开头的所有空白(空格 / Tab),哪怕没有空白也能匹配
/#/:把前面匹配到的行首空白,替换成 #
config.txt:要处理的文件

封面获取地址如下
复制链接到网盘下载
封面壁纸链接:
https://pan.baidu.com/s/1Sh4H6Ka0g2OC4t-oZKAvZA?pwd=yqr8 提取码:yqr8
✦
END
✦
往期4K原图获取方式

点击下面链接进入公众号里底部菜单栏
获取4K原图壁纸链接
(公众号资源库已更新 ~)


公众号:初见别辞
壁纸分享 | 电脑技术 | 头像

点赞
分享
收藏