1.理解系统的输入输出
输入:
就是我们的键盘,鼠标和我们用这些硬件在系统录入的字符
输出:
就是系统接收到我们想要实现的功能字符后,经过进程的处理产生字符
输入会有两种出现
编号1为正确输出
编号2为错误输出
默认着两种输出都会被系统定向到字符设备中 /dev /pts中
2.管理输入输出的符号
##输出重定向(正确的输出为1(也可忽略不写),错误的输出为2,正确和错误&)
> ##重定向正确输出
2> ##重定向错误输出
&> ##重定向所有输出
注意:
重定向会覆盖原文件内容
示例:
注意:以下实验必须在普通用户下完成
find /etc/ -name passwd > file ##定向正确输出到file
find /etc/ -name passwd 2> file ##定向错误输出到file
find /etc/ -name passwd &> file ##定向所有输出到file
> file ##清空file
##输出追加##
>> ##追加正确输出到文件最后
2>> ##追加错误输出到文件最后
&>> ##追加所有输出到文件最后
注意:
追加不会覆盖原文件内容
示例:
find /etc/ -name passwd >> file ##定向正确输出到file
find /etc/ -name passwd 2>> file ##定向错误输出到file
find /etc/ -name passwd &>> file ##定向所有输出到file
3.管道
1.管道的作用
“|”管道的作用是将前一条命令的输出变成后一条命令的输入
注意:管道只允许正确的输出通过(2>&1 (将错误输出的编号2转为1正确输出的编号))
如果需要第一条输出保存的话,可以用tee(可以将输入转为输出)
示例:(在普通用户下操作)
find /etc/ -name passwd | wc -l ##看到的是2,因为错误的命令不会通过管道
find /etc/ -name passwd 2>&1 | wc -l ##看到的是19,因为“2>&1”将编号2转变为编号1
find /etc/ -name passwd 2>&1 | tee file|wc -l ##将输出保存到file文件中,在统计行数