1.输入输出的定义 *1.输入:就是我们的键盘,鼠标和我们用这些硬件在系统中录入的字符 *2.输出:就是系统接收到我们想要实现的功能字符后,经过进程的处理产生字符输出会有两种结果出现: 编号为1为正确输出 编号为2为错误输出 默认这两种输出都会被系统定向到字符设备中。 2.如何管理输出 1.非交互式多行录入 vim C_pass.sh passwd sh C_pass.sh 是不能自动运行的 例如: passwd <<END lee lee END sh C-pass.sh 可以自动运行避免交互 例如: 3.如何管理输出 1.重定向 > 重定向正确输出 2> 重定向错误输出 &> 重定向所有输出 2>&1 把错误输出的编号由2转为1 例如:请用student用户做以下实验: find /etc/ -name passwd > file.out find /etc/ -name passwd 2> file.out find /etc/ -name passwd &> file.all find /etc/ -name passwd > file 2>&1 “注意:重定向是会覆盖文件原文内容的!!!” 例如:vim westos hello westos find /etc/ -name passwd >westos cat westos 原文件westos的内容hello不见了 2.追加:保持原文件内容不变的情况下把输出追加到文件之后 >> 追加正确输出 2>> 追加错误输出 &>> 追加所有输出 例如:find /etc/ -name passwd >> westos find /etc -name passwd 2>> westos find /etc -name passwd &>> westos 4.管道:把输出变成下一个程序的输入。 管道是用来组合多条命令的使用的。 例如:ls /bin | wc -1 “注意:通过管道后输出会变成输入,那么是无法保存在文件中的” tee 复制输出到指定位置 例如:ls /bin | tee hello | wc -1 cat hello hello中已经保存了输出 练习:1.显示当前时间 , 显示格式为 hh:mm:ss, 并保存到文件 time.txt文件中 2.显示 /etc/passwd 文件的第 15-18 行内容 3.显示 /bin 中文件包含大写字母的文件 , 保存到bin_westos_file.txt 文件中,并统计个数显示到屏幕 4.在 student 用户下查找 /etc 下 passwd 文件,屏蔽错误输出 5.在 student 用户下查找 /etc 下 passwd 文件,正确输出保存到 /tmp/westos.out 错误输出保存到 /tmp/westos.err 6.在 student 用户下查找 /etc 下 passwd 文件,显示命令输出并保存输出到 /tmp/westos.all 中