tr コマンドは、translate(変換)の略で、標準入力から文字を変換または削除する Linux のコマンドラインユーティリティです。これは単純なテキスト操作に役立つツールであり、他のコマンドの出力を処理するためにパイプと共によく使用されます。trtranslate 機能は、テキスト処理の核となる部分です。
基本的な文字変換
tr の最も一般的な使用法は、ある文字セットを別の文字セットに置き換えることです。例えば、すべての小文字を大文字に簡単に変換できます。
$ echo "hello world" | tr a-z A-Z
HELLO WORLD
この例では、echo の出力を tr コマンドにパイプしました。tr コマンドは、文字範囲a-zを対応する範囲A-Zの文字に変換しました。
-d を使用した文字の削除
強力な機能のもう一つは、-d(delete:削除)オプションを使用して特定の文字を削除できることです。これはテキストのクリーンアップに特に役立ちます。例えば、文字列からすべての数字を削除したい場合、linux tr -dを使用できます。
$ echo "My address is 123 Main Street" | tr -d '0-9'
My address is Main Street
ここでは、tr -dコマンドは指定されたセット('0'から'9')内のすべての文字を入力ストリームから削除しました。これはtr -d linuxユーザーにとって一般的なパターンです。
重複する文字の圧縮
tr コマンドは、-s(squeeze:圧縮)オプションを使用して、繰り返される文字を単一のインスタンスに「圧縮」することもできます。これは、余分な空白を含むテキストを正規化するのに最適です。
$ echo "Hello World, how are you?" | tr -s ' '
Hello World, how are you?
この場合、tr -s ' 'は複数のスペースのシーケンスを単一のスペースに置き換え、出力をはるかにきれいにしました。