5.重定向和管道 练习

 5.重定向和管道 练习

 1 、将/etc/issue 文件中的内容转换为大写后保存至/tmp/issue.out 文件中
 cat  /etc/issue |tr 'a-z' 'A-Z'  >/tmp/issue.out
5.1.PNG

2 、将当前系统登录用户的信息转换为大写后保存至/tmp/who.out 文件中
who |tr 'a-z' 'A-Z' >/tmp/who.out
who |tr [[:lower:]] [[:upper:]] >/tmp/who.out
5.2.PNG 

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 'whoami','
> the system version is here ,
> please help me to check ist,
> Thanks!
> eof

5.3.PNG

 4 、将/root/ 下文件列表,显示成一行,并文件名之间用 空格 隔开
ls  /root/ >f2
cat f2 |tr '\n' ' :'

5.4.PNG

 5 、file1 文件 的 内容为:”1 2 3 4 5 6 7 8 9 10”  计算出所有数字的总和
echo "1 2 3 4 5 6 7 8 9 10"|tr ' ' '+'|bc
echo $[`echo "1 2 3 4 5 6 7 8 9 10"|tr ' ' '+'`]

5.5.PNG

 6 、删除Windows 文本文件中的'^M' 字符
 cat an.txt | tr -d '\r'

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 -cd '[:digit:] \n'
echo 'xt.,l 1 jr#!$mn 2 c*/fe 3 uz 4' |tr -cd '[0-9] \n'

5.7.PNG

 8 、将PATH 变量每个目录显示在独立的一行
 echo $PATH | tr ':' '\n'echo 'xt.,l 1 jr#!$mn 2 c*/fe 3 uz 4' |tr -cd '[:digit:] \n'

5.8.PNG

 9 、删除指定文件的空行
cat f1 | -s '\n'

5.9.PNG

 10 、将文件中每个单词(字母)显示在独立的一行,并无空行
cat /f1 |tr -cd '[:alpha:]''\n'

5.10.PNG

原创文章,作者:AN0519,如若转载,请注明出处:http://www.178linux.com/28108