sedを使って読もうとしました\
。読むことができず、\
これを4に変更したい\\\\
と思います。\
\\\\
答え1
一重引用符の置換では、各バックスラッシュに対して2つのバックスラッシュを使用します。
echo '\' | sed 's/\\/\\\\\\\\/'
二重引用符の置換では、シェルは各バックスラッシュを\\
バックスラッシュとして解釈するため、各バックスラッシュリテラルには4つのバックスラッシュが必要です。
echo '\' | sed "s/\\\\/\\\\\\\\\\\\\\\\/"
答え2
sed 's/[\]/&&&&/'
は[...]
括弧内のセットの単一文字に一致する式です。各文字\
はリテラルなので、エスケープする必要はありません(式の周りに一重引用符を使用する場合は、二重引用符を使用してもエスケープバックスラッシュが必要です)。 。
置換文字列の4つの文字列は、それぞれ&
正規表現が一致するものに置き換えられます。
または[\]
気分が変だったら、
sed 's/\\/&&&&/'