正则表达式改变sed命令+特殊字符?

时间:2012-07-07 19:44:37

标签: sed cmd


我在Windows Xp上使用CMD用Sed替换特殊文本。我正在使用此命令替换$ or *之类的特殊字符:

sed -i "s/\*/123/g;" 1.txt

上一个命令不起作用,因为我有\"和其他用于制作正则表达式的特殊字符串。转义字符^不能很好地工作,因为sed没有给我错误但文件内部没有任何变化。

 要更改此文本"{\*)(//123/$$,请尝试使用此命令:
 sed -i "s£"^"{^\^*)(//123/^$^$"£xx£g;" 1.txt

£是分隔符,xx是新文本..但没有任何变化

我想如何翻译这样的文字?
sed -i^/\\*$/$[{" ;" 1.txt进入xx

1 个答案:

答案 0 :(得分:1)

这可能对您有用:

echo '"{\*)(//123/$$' | sed "s/[\"][{][\\][*][)][(][/][/]123[/][$][$]/xx/"
xx