1.输入输出定义
(1)输入
就是我们的键盘,鼠标和我们用这些硬件在系统只哦个录入的字符
(2)输出
就是系统接收到我们想要实现的功能字符后,经过进程的处理产生字符
输入会有两种出现
编号1为正确输出(1可以不写)
编号2为错误输出
默认着两种输出都会被系统定向到字符设备中
2.输入管理
(1)交互式录入
编写修改密码脚本
vim passwd.sh
sh passwd.sh 执行,需要手动执行
(2)非交互式录入
vim passwd.sh
编写非交互式录入脚本:
密码自动被修改
调用sh命令是不能自动运行的,需要借助<<输入重定向符号进行重定向
例如:
vim westos.sh
cat ld
2.输出重定向
> #重定向正确输出
2> #重定向错误输出
&> #重定向所有输出
2>&1 #把错误输出的编号由2转换为1
> file #清空文件file的内容
如在普通用户下将/etc/下名为passwd的正确文件文件重定向到file中
剩余在shell中显示的是错误信息
若让错误信息重定向到file.err中,则shell中显示正确信息
若让所有信息都重定向到file.all中,则shell中不显示信息
分别查看file和file.err,则file.all中显示的是两者信息之和
注意:重定向的内容会覆盖原来的内容
编辑新的文件,让其他文件重定向到该文件中,发现新编辑的信息被覆盖
3.追加
保持原文件内容不变的情况下把输出追加到文件之后
>> ##追加正确输出
2>> ##追加错误输出
&>> ##追加所有输出
新编辑一个文件,追加正确输出到该文件中,查看该文件,以前的信息没有被覆盖
清空file
4.管道符“ | “
把输出变成下一个程序的输入
管道是用来组合多条命令的使用
管道符只能输出正确结果,错误的结果会被自动过滤
ls /bin | wc -l
管道符只能输出正确结果,错误的结果会被自动过滤
把错误的重定向为正确的,再用管道符查看
注意:通过管道后输出会变成输入,无法保存在文件中
要想保存查看,使用以下命令:
tee file ##复制输出到指定位置
5.输入重定向
若只执行cat命令,则输入什么就显示什么
<< 后可以输入任意字符
当他再次出现之前系统会一直执行中间的内容