Linux三剑客之sed篇

本文详细介绍了sed命令的使用,包括基本语法、内置命令及其功能,如过滤特定行、替换内容、追加行以及提取IP地址的方法。通过多个示例展示了如何在实际操作中应用sed进行文本处理。
摘要由CSDN通过智能技术生成

目录

1、sed

1.1、sed命令的基本使用

1.2、示例说明

示例1、输出文件sed_text.txt的第2,3行内容

示例2、过滤出有hello的行

示例3、删除book有关的行

示例4、删除第2,3行的内容

示例5、将This替换为It,将boy替换为cat

示例6、在文件的第1行后面追加一行内容“I like Linux”

示例7、在文件中新增多行内容只需在内容的后面加上:\n

示例8、取出IP地址

1、sed

1.1、sed命令的基本使用

作用:sed是操作、过滤和转换文本内容的强大工具,常用功能包括结合正则表达式对文件实现快速的增删改查,其中查询的功能中最常用的功能就是过滤、获取指定行。

语法: sed [选项] [sed内置命令] [目标文件]

选项:

参数选项

作用

-n

取消默认的sed输出,常与sed的内置命令p一起使用

-i

直接将修改后的结果写入文件,不使用-i,sed修改的是内存数据

-e

可实现多次编辑,不需要使用管道符

-r

支持正则扩展

sed的内置命令字符

  • 用于对文件进行不同的操作功能,如对文件的增删改查

sed的内置命令字符

对应英文

作用

a

append

对文本进行追加,在指定行后面添加一行/多行文本

d

delete

删除匹配行

i

insert

表示插入文本,在指定行前添加一行/多行文本

p

print

打印匹配行的内容,通常p与-n一起使用

s/正则/替换内容/g

~

将匹配的内容进行替换,g代表全局匹配

sed匹配范围

范围

作用

空地址

全文处理

单地址

指定文件某一行

/pattern/

被模式匹配到的每一行

/pattern1/,/pattern2/

范围区间,或者 1,5 表示匹配1到5行的内容等价于 1,+4 表示第1行到往下4行的内容

1~2

步长,表示从1开始步长为2进行匹配,具体内容为1、3、5、7、9.....即匹配奇数行 ;2~2 表示从2开始匹配偶数行,2、4、6、8......

1.2、示例说明

示例1、输出文件sed_text.txt的第2,3行内容

命令:sed -n “2,3p” sed_test.txt 或 sed “2,3p” sed_test.txt -n 或 sed -n “2,+1p” sed_test.txt

示例2、过滤出有hello的行

命令:sed -n "/hello/p" sed_test.txt

示例3、删除book有关的行

命令:sed - i "/book/d" sed_test.txt

特别注意:-i 和 -n 参数一起使用会将文件全部数据删除

示例4、删除第2,3行的内容

命令:sed -i "2,3d" sed_test.txt

示例5、将This替换为It,将boy替换为cat

命令:sed -e "s/This/It/g" -e "s/boy/cat/g" sed_test.txt 或 sed -e "s#This#It#g" -e "s/boy/cat/g" sed_test.txt

示例6、在文件的第1行后面追加一行内容“I like Linux”

命令:sed "1a I like Linux" sed_test.txt -i

示例7、在文件中新增多行内容只需在内容的后面加上:\n

如:在第1行的前面插入两行内容:"I like Python " "I like Java"

命令:sed "1i I like Python \nI like Java" sed_test.txt -i

示例8、取出IP地址

方式1使用管道输出:ifconfig ens33 | sed "2p" -n | sed "s/^.inet //g" | sed "s/ net.$//g"

方式2使用-e参数批量编辑:ifconfig ens33 | sed -e "2s/^.inet //" -e "2s/net.$//p" -n

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值