Shell基础之-tr命令

tr命令

首先,大家如果看到有什么不懂的地方,欢迎吐槽!!!
我会在当天或者第二天及时回复,并且改进~~

tr命令实现字符转换功能,其功能类似于sed命令,但是,tr命令比sed命令简单,也就是说,tr命令能实现的功能,sed命令都可以实现
tr [option] charset1 chatset2 < 输入文件

tr命令选项及其意义

   -c #选定字符串1中字符集的补集,即反选字符串1中的字符集    -d #删除字符串1中出现的所有字符    -s #删除所有重复出现的字符序列,只保留一个

tr命令示例:

删除/etc/passwd文件中a-q字符,并且把结果打印出来
   tr -d a-z < /etc/passwd

删除/etc/passwd文件中0-9数字,并且把结果打印出来
   tr -d 0-9 < /etc/passwd

删除test文件中所有的换行符,并且把结果打印出来
   tr -d \\n < test

tr命令支持的控制字符

\a   #警告音
\b   #退格键
\f   #走行换页
\n   #换行符
\r   #回车键
\t   #tab键

tr命令示例:

将/etc/passwd中所有连续出现在一起的字母压缩成1个
   tr -s a-z < /etc/passwd

将/etc/passwd中所有连续出现在一起的数字压缩成1个
   tr -s 0-9 < /etc/passwd

将test中所有连续出现的换行符压缩成一个
   tr -s \\n < test  

将/etc/passwd文件中所有出现的大小写字母压缩成1个
   tr -s "[a-z],[A-Z]" < /etc/passwd
   tr -s [a-z],[A-Z] < /etc/passwd
   tr -s a-z,A-Z < /etc/passwd

将/etc/passwd中的所有小写字母转换为大写字母
   tr a-z A-Z < /etc/passwd

删除/etc/passwd中除了a-z,A-Z的全部字符
   tr -cd a-z,A-Z < /etc/passwd

删除/etc/passwd中换行符,a-z,A-Z以外的所有字符
   tr -cd a-z,A-Z,\\012 < /etc/passwd

匹配出/etc/passwd中o连续出现5次形成的字符串,并将该字符串替换为*字符串
   tr o*5 * < /etc/passwd

你可能感兴趣的:(shell)