概要
標準入力の内容を置換、削除します
tr
オプション
d = 置換をせずに削除する
s = 複数連続マッチした場合に1つにまとめて置換する
t = FROMからTOまで切り詰める
SET1の置換、削除ルール(正規表現)
SET2 tオプション時に利用。
指定内容について
\NNN 文字の八進数表現(1 から 3 個の 八進数)
\\ バックスラッシュ
\a ベル
\b バックスペース
\f フォームフィード
\n 改行
\r 復帰
\t 水平タブ
\v 垂直タブ
CHAR1-CHAR2 CHAR1 から CHAR2 までを昇順に展開した文字列
[CHAR1-CHAR2] SET1 と SET2 の両方で指定した場合には CHAR1-CHAR2 と同じ
[CHAR*] SET2 として, CHAR を SET1 の長さ分展開した文字列
[CHAR*REPEAT] CHAR を REPEAT 個展開した文字列, REPEAT の値を 0 から
始めた場合には八進数として解釈する
[:alnum:] 全てのアルファベットと数字
[:alpha:] 全てのアルファベット
[:blank:] 全ての水平方向空白類文字
[:cntrl:] 全ての制御文字
[:digit:] 全ての数字
[:graph:] 全ての表示可能文字。空白は含まない
[:lower:] 全ての小文字アルファベット
[:print:] 全ての表示可能文字。空白も含む
[:punct:] 全ての句読点
[:space:] 全ての水平及び垂直タブ文字
[:upper:] 全ての大文字アルファベット
[:xdigit:] 全ての十六進数数値
[=CHAR=] 全ての CHAR と等価な文字
サンプル
オプションなし
$echo "1234567890" | tr "123" "a" aaa4567890
dオプションで削除
$echo "1234567890" | tr -d "123" 4567890
sオプションでまとめて変換。オプションありなし比較。
$echo "1234567890" | tr "[:digit:]" "a" aaaaaaaaaa $echo "1234567890" | tr -s "[:digit:]" "a" a
tオプションで各文字単位で置換。オプションありなし比較。
$echo "1234567890" | tr "12" "3" 3334567890 $echo "1234567890" | tr -t "12" "3" 3234567890