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]
相关文章
相关标签/搜索