文字のセットを、次のような別のセットの対応する文字に置き換えたいと思います。
original set: ots
"target" set: u.x
foobartest → fuubar.ex.
このような翻訳/音訳は、tr
コマンドの専門です:
$ echo 'foobartest' | tr 'ots' 'u.x'
fuubar.ex.
残念ながら、tr
ファイルのインプレース変更はサポートしていませんsed
。
使用したいsed
ので、一時ファイルをジャグリングするホイールを再発明する必要はありません。
tr
正しく)置換セットの再帰を無視します:echo 'abc' | tr ab bx
→ bxc
。原始的な解決策xxc
は、既に翻訳された文字に翻訳を再適用するため、それを実行するかもしれません。