tr是
linux命令常用命令,其全稱「text replacer」,該命令用於進行文字替換。
tr用來從標準輸入中通過替換或刪除操作進行字元轉換。 tr主要用於刪除檔案中控制字元或進行字元轉換。
特別要注意一點:
tr 只能進行字元的替換、縮減和刪除,不能用來替換字串。
最常用選項的tr命令格式為:
tr -c -d -s ["string1_to_translate_from"] ["string2_to_translate_to"] file
這裡:
-c 用字串1中字符集的補集替換此字符集,要求字符集為ascii。
-d 刪除字串1中所有輸入字元。
-s 刪除所有重複出現字串行,只保留第乙個;即將重複出現字串壓縮為乙個字串。
file是轉換檔名。雖然可以使用其他格式輸入,但這種格式最常用。
字元範圍
指定字串1或字串2的內容時,只能使用單字元或字串範圍或列表。
[a-z] a-z內的字元組成的字串。
[a-z] a-z內的字元組成的字串。
[0-9] 數字串。
\octal 乙個三位的八進位制數,對應有效的ascii字元。
[o*n] 表示字元o重複出現指定次數n。因此[o*2]匹配oo的字串。
tr中特定控制字元的不同表達方式
速記符含義八進位制方式
\a ctrl-g 鈴聲\007
\b ctrl-h 退格符\010
\f ctrl-l 走行換頁\014
\n ctrl-j 新行\012
\r ctrl-m 回車\015
\t ctrl-i tab鍵\011
\v ctrl-x \030
使用示例:
1. 壓縮所有的小寫字元
[root@vm_146_131_tlinux ~]# tr -s "[a-z]"
aaaabcddd
abcd
2. 刪除空行
[root@vm_146_131_tlinux ~]# cat test
1111111
2222222222
33333333333333
[root@vm_146_131_tlinux ~]# tr -s "[\012]" < test > result
[root@vm_146_131_tlinux ~]# cat result
1111111
2222222222
33333333333333
[root@vm_146_131_tlinux ~]# tr -s "[\012]" < test > result
[root@vm_146_131_tlinux ~]# cat result
1111111
2222222222
33333333333333
[root@vm_146_131_tlinux ~]# tr -d "[\012]" result
[root@vm_146_131_tlinux ~]# cat result
1111111222222222233333333333333
4. 小寫到大寫
[root@vm_146_131_tlinux ~]# cat > test
adfsasdf
[root@vm_146_131_tlinux ~]# tr "[a-z]" "[a-z]" result
[root@vm_146_131_tlinux ~]# cat result
adfsasdf
5. 替代指定的字元
[root@vm_146_131_tlinux ~]# cat test
1231aaa24234nzvzbbbb8978
[root@vm_146_131_tlinux ~]# tr "[ab]" "[ba]" result
[root@vm_146_131_tlinux ~]# cat result
1231bbb24234nzvzaaaa8978
[root@vm_146_131_tlinux ~]#
以上部分內容來自
linux diff 命令使用說明
1 diff命令的功能 linux中diff命令的功能為逐行比較兩個文字檔案,列出其不同之處。它對給出的檔案進行系統的檢查,並顯示出兩個檔案中所有不同的行,不要求事先對檔案進行排序。2 語法 diff options file1 file2 該命令告訴使用者,為了使兩個檔案file1和file2一致...
scp命令使用說明
scp是linux常用的命令,它可以方便的進行檔案的傳輸。利用scp進行檔案傳輸時,通過指定的加密演算法還可以提公升傳輸速度。scp secure copy 允許不同的主機之間進行檔案傳輸。scp使用ssh進行資料的傳輸,提供了和ssh相同的身份認證和同一級別的安全策略。從本地複製單個檔案 scp ...
Trap命令使用說明
trap命令用於指定在接收到訊號後將要採取的行動。trap命令的一種常見用途是在指令碼程式被中斷時完成清理工作。可以使用trap l來檢視具體訊號列表。trap捕捉到訊號之後,可以有三種響應方式 trap commands signal listtrap signal listtrap signal...