sed 替换 [] 方括号

    使用sed替换一些特殊字符时,需要进行转义,但是如果想替换 方括号 [],就可能需要一些特殊的技巧。

1、替换[ 或者 ] 

echo '[test' |sed  's/\[//'
echo 'test]' |sed 's/\]//'
echo 'test]' |sed 's/]//'

对比可以发现, 替换 [ 时必须转义,而替换 ] 时可以不转义

2、 同时替换 []

echo '[test]' |sed 's/[\[\]]/'   # 无法替换
echo '[test]' |sed 's/[\[]]/'    # 无法替换

当需要同时发现以上两种方法都无法完成替换

方法一:

使用两次 sed

echo '[test]' |sed 's/\[//' |sed 's/]//'

方法二:

echo '[test]' |sed 's/[][]//'

具体原理有空再来补充




  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值