0


Windows XP で CMD を使用して、特殊なテキストを Sed に置き換えています。このコマンドを使用して、次のような特殊文字を置き換えてい$ or *ます。

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

\"およびsedが正規表現を作成するために使用する他の特別な文字列があるため、前のコマンドは機能しません。sed no エラーが発生するが、ファイル内で何も変更されないため、エスケープ文字^はうまく機能しません。

このテキストを変更するには、次の"{\*)(//123/$$コマンドを使用してみます:
sed -i "s£"^"{^\^*)(//123/^$^$"£xx£g;" 1.txt

£区切り文字xxです。新しい

テキストです..しかし、何も変更されません。
sed -i^/\\*$/$[{" ;" 1.txtの中へxx

4

1 に答える 1

1

これはあなたのために働くかもしれません:

echo '"{\*)(//123/$$' | sed "s/[\"][{][\\][*][)][(][/][/]123[/][$][$]/xx/"
xx
于 2012-07-07T19:57:39.207 に答える