sed不常见用法补充

本文详细介绍如何利用sed命令在Linux环境下进行文本的批量替换,包括单行或多行的替换、指定行的修改以及文本前后空白字符的清除。通过具体实例,展示了sed命令的强大功能及其在实际工作中的应用。

1

sed -i '/ADMIN URL/s/localhost/172.17.0.1/;
        /DATA URL/s/localhost/172.17.0.1/;
        s/localhost:8082/172.17.0.1:8082/;      
         N;/16379/s/localhost/172.17.0.1/;P;D;' $CONFIG_DIR/fusion_config/production.js     

sed 可以一次性执行多行代码,每行代码用分号隔开;上面代码块,前两行表示定位后进行替换操作,第三行代码匹配后就替换;第四行代码是模式空间指针到16379后(模式空间有两行),把模式空间里面的localhost替换掉。大写PD 表示打印模式空间第一行和删除第一行;

2

sed -i ‘/^\s*KaTeX parse error: Undefined control sequence: \s at position 32: …除空白行 sed -i 's/\̲s̲*//' test.txt …//g’ test.txt 删除行首和行尾的空格 也可以拆开写
把删除行尾的空格单独为:sed -i ‘s/\s*$//g’
正则表达式\s表示任意空白字符 不管是tab 还是空格
sed 模式匹配的g参数:
g是起到一个全局的作用,这个范围是每一行,也就是说是一行为单位,作为一个全局。+g :匹配每一行有行首到行尾的所有字符
所以慎用参数g

3

指定行修改,如第4行末尾追加一行,内容为test
sed -i ‘N;4atest’ test.txt
#第4行行首追加一行,内容为test
sed -i ‘N;4itest’ test.txt

4

更多干货文章见博主网站:https://blog.zhenglin.work

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值