1、将/etc/issue文件中的内容转换为大写后保存至/tmp/issue.out文件中

tr 'a-z' 'A-Z' < /etc/issue >/tmpissue.out

Linux练习题-重定义_练习


2、将当前系统登录用户的信息转换为大写后保存至/tmp/who.out文件中

whoami | tr 'a-z' 'A-Z'  > /tmp/who.out

Linux练习题-重定义_练习_02


3、一个linux用户给root发邮件,要求邮件标题为”help”,邮件正文如下:

      Hello, I am 用户名,The system version is here,please help me to check it ,thanks!

      操作系统版本信息

 mail -s "help" root <<eof

 Hello, I am $USER, the system version is here,please help me to check it ,thanks!

`lsb_release`或者`cat /etc/centos-release`

eof

Linux练习题-重定义_练习_03

Linux练习题-重定义_练习_04

4、将/root/下文件列表,显示成一行,并文件名之间用空格隔开

ls -1 | tr '\n' ' ' /root

 Linux练习题-重定义_练习_05

5、计算1+2+3+..+99+100的总和

echo {1..100} | tr ' ' '+' | bc

Linux练习题-重定义_Linux_06

6、删除Windows文本文件中的‘^M’字符

tr -d '\r' <windows.txt >linux.txt 

Linux练习题-重定义_练习_07


7、处理字符串“xt.,l 1 jr#!$mn 2 c*/fe 3 uz 4”,只保留其中的数字和空格

echo 'xt.,l 1 jr#!$mn 2 c*/fe 3 uz 4' | tr -d  '[:alpha:]' | tr -d '[:punct:]'

Linux练习题-重定义_Linux_08

8、将PATH变量每个目录显示在独立的一行

$PATH的目录是用冒号分隔开的,因此用指令:替换为\n即可,echo $PATH | tr ':' '\n'

Linux练习题-重定义_Linux_09

9、将指定文件中0-9分别替代成a-j

tr '0-9' 'a-j' < 被指定的文件

Linux练习题-重定义_Linux_10

10、将文件/etc/centos-release中每个单词(由字母组成)显示在独立的一行,并无空行

tr -d '\n' < /etc/centos -release | tr ' ' '\n'

如果先不去掉\n直接转换会变成,使得core下方空出来一行

Linux练习题-重定义_Linux_11

因此先删去\n,再空格替换\n

Linux练习题-重定义_练习_12