2 blacksheeppp BlackSheeppp 于 2018.01.12 10:45 提问

shell脚本sed命令中|转义问题

sed 's/text1/text2/' file,text1与text2中包含|,怎么转义呢?
sed -n '/$orderid/s/SUCCESS|0|扣款成功/FAIL|G002|交易失败/' file
SUCCESS|0|扣款成功 为text1
FAIL|G002|交易失败 为text2
想要把包含$orderid的行中text1替换为text2
试了'' \貌似都不太对。。。
应该怎样转呢。。。
谢谢!!!

2个回答

oyljerry
oyljerry   Ds   Rxr 2018.01.12 11:12
已采纳

不需要转义直接就可以用|

  sed 's/a|b|c/1|2|3/' test.txt
linshizhuce369
linshizhuce369   2018.01.17 14:32

sed '/\b' test.txt >abc.txt

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!