1,管理输入输出的符号
##输出重定向:
> | 重定向正确输出 |
---|---|
2> | 重定向错误输出 |
&> | 重定向所有输出 |
注意:
重定向会覆盖原文件内容
注意:以下实验必须在student用户下完成
find /etc/ -name passwd > file ##定向正确输出到file
注:将正确文件重新定向到file文件后,shell 的结果会显示出错误的文件。
find /etc/ -name passwd 2> file2.err ##定向错误输出到file2
注:将错误的文件重新定向到file2文件后,shell 的结果会显示正确的的文件。
find /etc/ -name passwd &> file3.all ##定向所有输出到file3
注:将错误的文件和正确的文件重新定向到file3文件后,shell 没有任何显示。
> file ##清空file
注意:命令: find /etc/ -name 文件名称 ###查找指定目录中的文件##
##输出追加
>> ##追加正确输出到文件最后
>> | 追加正确输出到文件最后 |
---|---|
2>> | 追加错误输出到文件最后 |
&>> | 追加所有输出到文件最后 |
注意:
追加不会覆盖源文件内容
示例:
find /etc/ -name passwd >> file ##追加正确输出到file
注:将正确文件重新定向到file文件后,shell 的结果会显示出错误的文件。
find /etc/ -name passwd 2>> file2.err ##追加错误输出到file2
注:将错误的文件重新定向到file2文件后,shell 的结果会显示正确的的文件。
find /etc/ -name passwd &>> file3.all ##追加所有输出到file3
注:将错误的文件和正确的文件重新定向到file3文件后,shell 没有任何显示。
##3.管道的应用##
1.管道的作用
作用:“|” 管道的作用是把前一条命令的输出变成后一条命令的输入
注意:
管道只允许正确输出通过
通过管道的输入将会变成输入,而变成输入的这些输出是会被第二条命令处理的
如果需要保存输出内容,那么需要复制一份输出,用到的命令是“tee”
此实验在普通用户下操作:
1)find /etc/ -name passwd | wc -l ##会看到的结果为2,因为错误输出不能通过管道
注:正确的一共是2行。
2)find /etc -name passwd 2>&1|wc -l ##会看到19,因为编号为2的输出被“2>&1”转换为编号1
注:输出错误的一共是19行
3)find /etc -name passwd 2>&1|tee file |wc -l ##保存一份输出到file再统计行数
注:保存一份输出到file文件中,再统计文件个数,一共19行。