Ich möchte eine Reihe von Zeichen durch entsprechende Zeichen aus einer anderen Reihe ersetzen, etwa so:
original set: ots
"target" set: u.x
foobartest → fuubar.ex.
Übersetzungen / Transliterationen wie diese sind die Spezialität des trBefehls:
$ echo 'foobartest' | tr 'ots' 'u.x'
fuubar.ex.
Leider wird trdas Ändern von Dateien an Ort und Stelle nicht unterstützt, wie dies der sedFall ist.
Ich würde es gerne verwenden, seddamit ich das Rad des Jonglierens von temporären Dateien nicht neu erfinden muss.
tr(Richtig) Ignoriert die Rekursion in den Ersatzsätzen: echo 'abc' | tr ab bx→ bxc. Bei einer primitiven Lösung wird dies möglicherweise abgeschlachtet, xxcda die Übersetzung erneut auf bereits übersetzte Zeichen angewendet wird.
sedGegensatz zu GNU trkann Multi-Byte-Zeichen transkribieren)