练习
1 、将/etc/issue 文件中的内容转换为大写后保存至/tmp/issue.out 文件中
# cat /etc/issue|tr 'a-z' 'A-Z' > /tmp/issue.out
[root@6 testdir]# cat /etc/issue|tr 'a-z' 'A-Z' > /tmp/issue.out [root@6 testdir]# cat /tmp/issue.out CENTOS RELEASE 6.8 (FINAL) KERNEL \R ON AN \M
2 、将当前系统登录用户的信息转换为大写后保存至/tmp/who.out 文件中
# who|tr 'a-z' 'A-Z' > /tmp/who.out
[root@6 testdir]# who root tty1 2016-07-29 08:37 (:0) root pts/0 2016-07-29 08:44 (:0.0) root pts/1 2016-07-29 08:44 (10.1.250.77) [root@6 testdir]# who|tr 'a-z' 'A-Z' > /tmp/who.out [root@6 testdir]# cat /tmp/who.out ROOT TTY1 2016-07-29 08:37 (:0) ROOT PTS/0 2016-07-29 08:44 (:0.0) ROOT PTS/1 2016-07-29 08:44 (10.1.250.77)
3 、一个linux 用户给root 发邮件,要求邮件标题为”help”,邮件正文如下:
Hello, I am 用户名,the system version is here,please help me to
check it ,thanks!操作系统版本信息
[lvasu@6 ~]$ echo -e "Hello, I am root,the system version is please help me to check it ,thanks! \n `cat /etc/centos-release`" | mail -s help root [root@6 testdir]# mail Heirloom Mail version 12.4 7/29/08. Type ? for help. "/var/spool/mail/root": 4 messages 4 new >N 1 Anacron Thu Jul 28 15:32 17/606 "Anacron job 'cron.daily' on 6.local" N 2 Anacron Fri Jul 29 09:26 17/606 "Anacron job 'cron.daily' on 6.local" N 3 Anacron Sun Jul 31 16:26 17/606 "Anacron job 'cron.daily' on 6.local" N 4 lvasu@6.localdomain Sun Jul 31 22:22 19/641 "help" Message 1: From root@6.localdomain Thu Jul 28 15:32:24 2016 Return-Path: <root@6.localdomain> X-Original-To: root Delivered-To: root@6.localdomain From: Anacron <root@6.localdomain> To: root@6.localdomain Content-Type: text/plain; charset="ANSI_X3.4-1968" Subject: Anacron job 'cron.daily' on 6.localdomain Date: Thu, 28 Jul 2016 15:32:23 +0800 (CST) Status: R /etc/cron.daily/mlocate.cron: /usr/bin/updatedb: can not open `/etc/updatedb.conf': Permission denied
4 、将/root/下文件列表,显示成一行,并文件名之间用空格隔开。
ls /root |tr '\n' '\ '
[root@6 ~]# ls /root |tr '\n' '\ ' a anaconda-ks.cfg install.log install.log.syslog s x 公共的 模板 视频 图片 文档 下载 音乐 桌面
5 、file1 文件 的 内容为:”1 2 3 4 5 6 7 8 9 10” 计算出所有数字的总和
[root@6 testdir]# cat file1 1 2 3 4 5 6 7 8 9 10 [root@6 testdir]# cat file1 |tr '\ ' '+'|bc 55
6 、删除Windows 文本文件中的'^M' 字符
[root@6 桌面]# cat -A a.txt My name is Bob.^M$ I am from US.^M$ [root@6 桌面]# cat a.txt |tr -d '\015'> b.txt [root@6 桌面]# cat b.txt -A My name is Bob.$ I am from US.$
7 、处理字符串“xt.,l 1 jr#!$mn 2 c*/fe 3 uz 4”,只保留其中的数字和空格
# echo “xt.,l 1 jr#'a-z'mn2 c*/fe3 uz4”|tr -d '[:alpha:][:punct:]'
[root@6 ~]# echo “xt.,l 1 jr#'a-z'mn2 c*/fe3 uz4”|tr -d '[:alpha:][:punct:]' “ 1 2 3 4”
8、将PATH变量每个目录显示在独立的一行
[root@6 桌面]# echo $PATH /usr/lib64/qt-3.3/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin [root@6 桌面]# echo $PATH|tr ':' '\n' [root@6 ~]# echo $PATH|tr ':' '\n' /usr/lib64/qt-3.3/bin /usr/local/sbin /usr/local/bin /sbin /bin /usr/sbin /usr/bin /root/bin
9、删除指定文件的空行
[root@6 testdir]# cat w ab cd ef gh [root@6 testdir]# cat w |tr -s "\n" ab cd ef gh
10、将文件中每个单词(字母)显示在独立的一行,并无空行
[root@6 testdir]# cat /etc/init.d/functions | tr -cs '[:alpha:]' '\n' [root@6 ~]# cat /etc/issue | tr -cs '[:alpha:]' '\n' CentOS release Final Kernel r on an m