我在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
答案 0 :(得分:1)
这可能对您有用:
echo '"{\*)(//123/$$' | sed "s/[\"][{][\\][*][)][(][/][/]123[/][$][$]/xx/"
xx