Tecmint.comは10月27日(米国時間)、「10 tr Command Examples in Linux」において、文字を変換したり削除したりするtrコマンドの実行サンプル10選を紹介した。trコマンドはシンプルなコマンドで、sedやawkを使うほどでもないような文字の変換処理で使われることが多い。
紹介されている主な実行例は次のとおり。
コマンドサンプル | 内容 |
---|---|
cat 入力ファイル | tr [:lower:] [:upper:] | 小文字を大文字に変換 |
cat 入力ファイル | tr [a-z] [A-Z] | 小文字を大文字に変換 |
cat 入力ファイル | tr [a-z] [A-Z]>出力ファイル | 小文字を大文字に変換しファイルへ書き込む |
tr [a-z] [A-Z]出力ファイル | 小文字を大文字に変換しファイルへ書き込む |
cat 入力ファイル | tr -d ' ' | スペースを削除 |
cat 入力ファイル | tr -s ' ' | 連続するスペースを1つにスペースに変換 |
cat 入力ファイル | tr -cd "[:digit:]\n" | 数字と改行以外を削除 |
cat 入力フィイル | tr " " "\n" | スペースを改行に変換 |
cat 入力ファイル | tr "\n" " " | 改行をスペースに変換 |
cat 入力ファイル | tr " " ":" | スペースをコロンに変換 |
trコマンドではa-zやA-Zのような指定で文字集合を表現することができる。a-zでaからzまでの小文字のアルファベット、A-ZでAからZまでの大文字のアルファベット、0-9で0から9までも数字といった具合になる。第1引数に指定した対象が変換元で、第2引数に指定した対象が変換先となる。
-dは変換ではなく削除を意味し、-sは連続する文字を1つの文字に置き換えることを意味している。-cは補集合を意味しており処理としては「それ以外の」といった意味を持つ。これらオプションと指定方法を組み合わせることで特定の文字を別の文字に変換することができる。