标准I-O和管道

标准I-O和管道_第1张图片

>:把标准输出重定向到文件,文件内容会被覆盖
>>:把标准输出重定向到文件, 原有内容基础上,追加内容 
2>:把标准错误重定向到文件,进行覆盖。
2>>:把标准错误重定向到文件,进行追加。
&>:表示合并标准输出和错误输出覆盖重定向
&>>:把标准输出和标准错误进行重定向追加
2>&1:表示意义同&>即合并标准输出和错误输出覆盖重定向; 
&>or >& or 2>&1:把标准输出和标准错误作为同一个数据流重定向到文件
<:输入重定向; 
<<:多行输入
set  -C:  禁止将内容覆盖已有文件,但可追加      
>|:强制覆盖重定向(与set -C相反);      
set +C:解除禁止覆盖重定向的设置; 
| :把前一个命令的执行结果当做后一个命令的输入。 

示例

\>
例: 把 uname -r 重定向到/data/test.log文件里
标准I-O和管道_第2张图片
\>>
例 :将who追加到/data/test.log文件里
标准I-O和管道_第3张图片
2>
例:将对的放到f1文件中,错误的放到f2文件中
标准I-O和管道_第4张图片
&>
例:把对的错的都放在all.log文件中
标准I-O和管道_第5张图片
set - C/set + C
例 :禁止将主机名覆盖all.log文件/解除禁止覆盖
标准I-O和管道_第6张图片
\>|
例:强制对all.log文件进行覆盖
标准I-O和管道_第7张图片()
例: 把date和cal两个命令的执行结果都重定向到all.log文件里
标准I-O和管道_第8张图片
<
例: 把f1.log文件的内容写到f3.log文件里
标准I-O和管道
<<
例 : 屏幕随便输入几行内容,遇到END字样结尾后,屏幕内容自动保存在f5.log里
标准I-O和管道_第9张图片
例:给自己写一封邮件,标题叫hello
标准I-O和管道_第10张图片

tr

转换和删除字符

常用选项

标准I-O和管道_第11张图片
例:用输入重定向的方式,把所有小写字母转换为大写
标准I-O和管道_第12张图片
例:删除f1.log文件中的所有abc中的任意字符
标准I-O和管道_第13张图片

|

例:把echo输出的内容,传递给tr命令,再传递给bc命令
标准I-O和管道
| -a
追加
标准I-O和管道_第14张图片
例: 把echo输出的内容,传递给tr命令,实现小写字母转换为大写字母
标准I-O和管道
例:一页一页的查看输入
标准I-O和管道
标准I-O和管道_第15张图片

重点

1.输入的重定向 <
2.多行重定向
3.管道