Linux經常使用命令--tr

tr命令能夠對來自標準輸入的內容進行字符替換,刪除,重複字符壓縮,經常用來編寫單行命令。this

tr只能經過stdin(標準輸入),而沒法經過命令行參數來接受輸入,格式以下:命令行

tr [options] set1 set2

1、替換字符串code

$ echo "HELLO WHO IS THIS" | tr 'A-Z' 'a-z'
hello who is this

代碼解析:把來自標準輸入的大寫替換成小寫字符串

2、-d刪除字符io

$ echo "Hello 123 world 456"| tr -d '0-9'
Hello world

代碼解析:把來自標準輸入的數字0-9刪除di

3、-c字符串補集文件

$ echo "Hello 123 world 456" | tr -d -c '0-9 \n'
123 456

代碼解析:刪除除0-9與\n以外的全部字符co

4、-s壓縮字符字符

$ echo "Gun is      not       Unix.    Recursive   right      ?" | tr -s ' '
Gun is not Unix. recursive right ?

代碼解析:把連續重複字符' '(空格)壓縮成單個字符數字

5、對文件中的數字列表進行相加

$cat sum.txt
1
2
3
4

$ cat sum.txt | echo $[ $( tr '\n' '+' ) 0]
10

代碼解析:在上面的命令中,tr用來將'\n'替換成'+',所以咱們獲得了字符串"1+2+3+4",可是在字符串尾部多了一個操做符+。爲了抵消這個多出來的操做符,咱們在追加一個0。

$[ operation ]執行算術運算,所以獲得下面的字符串

echo $[1+2+3+4]
相關文章
相關標籤/搜索