1.簡(jiǎn)介
tr用來(lái)轉(zhuǎn)換或者刪除一段文字。tr是translate(轉(zhuǎn)換的縮寫),功能的英文示意是:translate or delete characters。tr所有的功能均可由sed來(lái)完成,可以將tr視為sed一個(gè)極簡(jiǎn)的實(shí)現(xiàn)。
2.格式
tr [OPTION]... SET1 [SET2]
3.選項(xiàng)
-c,-C,--complement:將字符集<character set1>以外的其他字符刪除或者轉(zhuǎn)換為字符集<character set2>中的最后一個(gè)字符(如果你指定了多個(gè)字符的話)。見(jiàn)示例6。
-d,--delete:刪除信息當(dāng)中的SET1這個(gè)字符串。
-s,--squeeze-repeats:壓縮重復(fù)的字符,只保留一個(gè)。
--help:顯示幫助信息。
--version:顯示版本信息。
4.示例
(1)將last輸出的信息中所有小寫的字符變成大寫字符。
last|tr '[a-z]' '[A-Z]'
//或者
last|tr [a-z] [A-Z]
(2)將/etc/passwd輸出的信息中的冒號(hào):刪除。
cat /etc/passwd | tr -d ':'
(3)將dos文件轉(zhuǎn)成unix文件。
cat /etc/passwd | tr -d '\r'
(4)刪除空行
cat file | tr -s "\n" > new_file
(5)將文件file中出現(xiàn)的”abc”替換為”xyz”。
cat file | tr "abc" "xyz" > new_file
注意:這里凡是在file中出現(xiàn)的”a”字母,都替換成”x”字母,”b”字母替換為”y”字母,”c”字母替換為”z”字母,而不是將字符串”abc”替換為字符串”xyz”。
(6)刪除和替換指定字符集以外的字符。
//替換指定字符集以外的字符
[b3335@MIC ~]$ echo alv blv|tr -c 'lv ' "x"
xlv xlvx
//刪除指定字符集以外的字符
[b3335@MIC ~]$ echo alv blv|tr -cd 'lv'
lvlv
以上就是Linux tr命令的使用的詳細(xì)內(nèi)容,更多關(guān)于Linux tr命令的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!