Sed 学习整理

本文详细介绍SED命令的基础使用方法,包括SED的基本语法、常用命令及实际应用场景。通过具体例子讲解如何利用SED进行文本处理,例如插入、追加、替换、删除等操作,并探讨了SED在模式匹配、文件备份等方面的应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

sed 命令总结

使用如下命令生成 filename  文件
cat <<EOF >filename
aaaaaaaaaaaa
bbbbbbb
ccccc
ddddddddddd
eeeeeeee
ffffffffffffffffffffff
hhhhhhhhhhhhh
iiiiiiiiiiii
jjjjjjjjj
kkkkkkkkkkkkkkkk
llllllllllllll
mmmmmmmmmmmmmmmmmmmm
EOF



#### 术语介绍
模式空间: sed 正在处理的内容,一般为文件的一行,也可使用特殊命令(如 N),进行扩展


#### 选项

sed -i 选项可跟一参数做为备份文件的后辍名       

            

sed -i.bak  -n 'p'    filename

            上面命令会产生一个名为 filename.bak 的文件

sed -r 启用扩展的正则表达式

sed =     打印行号(行号占独立一行)

#### 命令
i\     在匹配的行前插入
         
sed '5i\a\\aa\na\ta' filename

#在第五行插入 a\\aa\na\ta (支持 \\ \n \t 等转意字符)

a\     在匹配的行后添加,用法同 i\


c\    对匹配的行进行替换(对整个模式空间进行替换) ,用法见 i\

d    删除匹配到的行

q    退出 sed , 不再对后续的文件内容进行处理

Q    同 q ,不同点在于,q 打印当前模式空间中的内容,而 Q 不打印直接退出
    (通俗解释:q打印匹配到的行再退出,Q不打印,直接退出)

first~step    从第first 行开始,每隔 step 行打印一行
               
sed -n '2~3p' filename 
            输出:
          
     bbbbbbb
     eeeeeeee
     iiiiiiiiiiii
     llllllllllllll

$     用于匹配最后一行

0,addr2        从开始匹配到 addr2, addr2 只能使用正则表达式配置,如果配置不到,则会打印整个文件
       
addr1,+N    从 addr1 匹配到之后的 N 行,addr1 可以使用正则表达式配置
          
addr1,~N    同上,但是之前的  N 行




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值