将/etc/issue⽂件中的内容转换为⼤写后保存⾄/tmp/issue.out⽂件中
cat /etc/issue | tr 'a-z' 'A-Z' | > /tmp/issue.out 错
cat /etc/issue | tr 'a-z' 'A-Z' > /tmp/issue.out 对
后面需要标准输入时才用管道技术,否则直接重定向即可,如>符号就是直接把STDOUT输出到文件了- ⼀个linux⽤户给root发邮件,要求邮件标题为”help” ,邮件正⽂如下: Hello, I am ⽤户名,The system version is
here,please help me to check it ,thanks! 操作系统版本信息[root@magedu ~]# mail -s help root << EOF Hello, I am `whoami`. The system version is here,please help me to check it,thanks! `cat /etc/redhat-release` EOF
注意:发送给root 所以主题后要加上root
使用“<<终止词”命令从键盘把多行重导向给STDIN,mail命令常用这个方法来写邮件
引用命令时候注意包围的字符是什么
正常写邮件可以使用.来退出;读邮件退出可以用q 删除Windows⽂本⽂件中的ʻ^Mʼ 字符
cat test.txt | tr -d '\r' > newtest.txt
注意修改后要修改文件名,不能传到原文件中^M字符的来历和作用:在DOS/Windows里,文本文件的换行符为\r\n,而在nix系统里则为\n,所以DOS/Windows里编辑过的文本文件到了nix里,每一行都多了个^M。所以^M只是一个换行符号,没有实际的用处,我们可以将它保留,也可以将它删除(即把\n删除)
处理字符串“xt.,l 1 jr#!$mn 2 c*/fe 3 uz 4”,只保留其中的数字和空格
echo "xt.,l 1 jr#!$mn 2 c/fe 3 uz 4" | tr -dc [:digit:][:space:] 错
echo "xt.,l 1 jr#!$mn 2 c/fe 3 uz 4" | tr -dc '[:digit:][:space:]' 两个参数用单引号括起来将⽂件/etc/centos-release中每个单词(由字⺟组成)显⽰在独⽴⼀⾏,并⽆空⾏
cat /etc/centos-release |tr ' ' '\n' 错
cat /etc/centos-release |tr -cs '[:alpha:]' '\n'
注意:只保留单词,数字不要,括号也不要,最后一行也不能是空行(用上面错的方法就会产生空行)
原理:把非字母的其他所有东西压缩,并替换成换行即可
转载于:https://www.cnblogs.com/linux521/p/10886112.html