1.文件输入输出的定义
输入:我们通过使用硬件设备(鼠标、键盘等)在系统中录入的字符
输出:系统接收到功能字符后,经过进程的处理而产生的字符
输出分为:
- 正确输出 stdout (标准正确输出)标号为1
- 错误输出 stderr (标准错误输出)标号为2
这两种输出都会被系统定向到字符设备中
2.如何管理输入
(外界传递到程序中的信息)
1)<
[输入重定向]
tr ‘a-z’ ‘A-Z’ < lyx :[把文件lyx里的内容定向到tr程序中]
2)<<
[多行录入]
tr ‘a-z’ ‘A-Z’ << EOF
<
<
< EOF
3.如何管理输出
1)输出重定向
> | 重定向正确输出 |
---|---|
2> | 重定向错误输出 |
&> | 重定向所有输出 |
- >
- 2>
- &>
注意:重定向输出后会覆盖原文件(图中文件lyx)里的内容
2)追加
>> | 追加正确输出 |
---|---|
2>> | 追加错误输出 |
&>> | 追加所有输出 |
- >>
- 2>>
- &>>
注意:追加和重定向功能类似,但追加管理输出后不会覆盖原文件内容
3)管道符 |
[把前一条命令的输出变成输入 传递到下一条命令 进行操作]
- 管道只处理正确输出
- 2>&1 把编号为2的输入转换到编号为1的输出中
- 管道在一条命令中可以使用多次
- tee 复制输出到指定位置
来源:oschina
链接:https://my.oschina.net/u/4389791/blog/4405287