私はsed13
を使用して置き換えようとしています:21
echo "for i in {1..5}; do commands for FILE13 > output_${i}; done" | sed 's/13/21/g'
そして、私の出力は次のようになります。
for i in {1..5}; do commands for FILE21 > output_2; done
13
に置き換えられました21
が、さらに${i}
に置き換えられました2
。
なぜこれが起こるのですか?そして、mu中括弧のコンテンツをsedで置き換えるのをやめるにはどうすればよいですか?
編集
コマンドが次のようになっている場合はどうなりますか?
echo 'for i in {1..5}; awk'{( do commands)}' FILE13 > output_${i}; done' | sed 's/13/21/g'
そして、私が得ているので、二重引用符を一重引用符に置き換えることはできませんbash: syntax error near unexpected token
('`
\
中括弧をエスケープするために使用する唯一の解決策はありますか?