目录
一、输入输出的定义
(1)字符设备
字符设备就是显示字符到屏幕上的设备文件
(2)stdin
标准输入编号为 0键盘 鼠标 打字机(3)stdout标准正确输出标号为 1(4)stderr标准错误输出标号为 2
二、管理系统的输入
####外界传递到程序中的信息
1) 输入重定向 <
tr
'a-z' 'A-Z' <
test ##
把
test
文件中的内容定向到
tr
程序中
![](https://i-blog.csdnimg.cn/blog_migrate/0a4a1c4ebd92d7c50b78166fd546b27b.png)
2)多行录入 <<
tr 'a-z' 'A-Z' << EOF( 字符任意 )test## 此处的 test 不能表示为文件名称只表示 test 字符test1EOF ( 当首字母再次出现表示录入结束 )
![](https://i-blog.csdnimg.cn/blog_migrate/35b3e72329b3d34e4a749ac4fcd62771.png)
三、管理系统的输出
1)输出重定向
>
2>
&>
find /etc -name passwd > 文件名 ##重定向正确输出
find /etc -name passwd 2> 文件名 ##重定向错误输出
find /etc -name passwd &> 文件名 ##重定向所有输出
注意:重定向管理输出后会覆盖原文件内容
2)追加
>>
2>>
&>>
find /etc -name passwd >> 文件名 ##追加正确输出
find /etc -name passwd 2>> 文件名 ##追加错误输出
find /etc -name passwd &>> 文件名 ##追加所有输出
注意:追加和重定向功能类似,但是不会覆盖原文件内容
3)管道 “|”
管道“|” ###
把前一条命令的输出变成输入传递到下一条命令进行操作
注意:
- 管道只处理正确输出
- 2>&1把编号为2的输入转换到编号为1的输出中
- tee 复制输出到指定位置
- 管道在一条命令中可以使用多次
![](https://i-blog.csdnimg.cn/blog_migrate/d58a90d3ffc386eba5d9091ec0c9fb2a.png)
四、练习
在普通用户下执行命令完成以下操作 :1. 查找 / etc / 下的 passwd 文件屏蔽错误输出2. 查找 / etc / 下的 passwd 文件正确输出保存到 / tmp 目录中的 westos.out 中 , 错误输出保存到 / tmp / 目录中的westos.err 中3. 查找 / etc / 下的 passwd 文件保存所有输出到 / tmp 目录中的 westos.all 中并统计输入的行数4. 查找 / etc / 下的 passwd 文件统计输出行数并显示输出内容5. 转换 / etc / 目录中 passwd 文件中的所有字母为大写并统计文件行数6. 请用脚本非交互模式编写文件 westos.file 内容为 :hello linuxhello westoshello linuxwestos linux is very nice !!
6、