trコマンドファイルフィルタ分割とマージの詳細

4855 ワード

trコマンドファイルフィルタ分割とマージ
trコマンドは、標準入力からの文字を置換、圧縮、削除できます.1つの文字のセットを別の文字のセットに変えることができ、優美な単行コマンドを書くのによく使われ、強力な役割を果たしています.
構文tr(オプション)(パラメータ)オプション
-c ——complerment:               ;
-d ——delete:              ;
-s --squeeze-repeats:                 ;
-t --truncate-set1:                   。

パラメータ文字セット1:変換または削除する元の文字セットを指定します.変換操作を実行する場合は、パラメータ「文字セット2」を使用して変換のターゲット文字セットを指定する必要があります.ただし、削除操作を行う場合は、パラメータ「文字セット2」は必要ありません.文字セット2:変換するターゲット文字セットを指定します.インスタンスは、入力文字を大文字から小文字に変換します.
echo "HELLO WORLD" | tr 'A-Z' 'a-z'
hello world

「A-Z」と「a-z」は集合であり、集合は自分で制定することができる.例えば、「ABD-}」、「bB.」、「a-de-h'、'a-c 0-9'はすべて集合に属し、集合では'''、''を使用することができ、他のASCII文字を使用することができる.
trを使用して文字を削除するには、次の手順に従います.
echo "hello 123 world 456" | tr -d '0-9'
hello  world 

タブをスペースに変換するには、次の手順に従います.
cat text | tr '\t' ' '

文字セット補完セット:入力テキストから補完セットにないすべての文字を削除します.
echo aa.,a 1 b#$bb 2 c*/cc 3 ddd 4 | tr -d -c '0-9 
'
1 2 3 4

この例では、補完セットに0~9、スペース、改行文字が含まれているので削除されず、他の文字はすべて削除されます.
trで文字を圧縮すると、入力で繰り返される文字を圧縮できます.
echo "thissss is      a text linnnnnnne." | tr -s ' sn'
this is a text line.

trを巧みに使用して数値加算操作を行います.
echo 1 2 3 4 5 6 7 8 9 | xargs -n1 | echo $[ $(tr '
'
'+') 0 ]

Windowsファイルの「作成」の'^M'文字を削除します.
cat file | tr -s "\r" "
"
> new_file cat file | tr -d "\r" > new_file

trで使用できる文字クラス:
[:alnum:][:alpha:][:cntrl:]:  (   )  
[:digit:][:graph:][:lower:][:print:][:punct:][:space:][:upper:][:xdigit:]

使用方法:
tr '[:lower:]' '[:upper:]'