tr 指令可以用來變化或是刪除.
例如將小寫變成大寫
echo 'this is a test' | tr "[:lower:]" "[:upper:]"
THIS IS A TEST
echo 'this is a test' | tr "a-z" "A-Z"
THIS IS A TEST
置換檔案內的符號
原本內容是:
cat test.txt
start[]
test[]
end[]
tr '[]' '()' < test.txt > new.txt
已經置換了:
cat new.txt
start()
test()
end()
刪除特定字元
echo "This is aaaa test" | tr -d 'a'
This is test
字元a 已經全部刪除.
也可以用來刪除逸出序列或控制碼.
或是將 space 轉成 tab
echo "This is a test" | tr [:space:] '\t'
This is a test
反之亦然.
或是去掉多餘空白行.
原本內容是:
cat test2.txt
1
2
3
處理後是:
tr -s '\n' '\n ' < test2.txt
1
2
3
--- 分隔線 ---
tr 可以搭配其他指令使用,可以過濾資料,或是置換成我們想要的格式.