linux系统中输入输出的管理
系统的输入输出:输入到shell中的命令,通过CPU运算产生结果,并传送给字符设备显示到屏幕上(默认/dev/pst/0)
以下命令要在普通用户下进行操作
1、管理输入输出符号: ##输出重定向 (1) > 重定向正确输出 (2) 2> 重定向错误输出 (3) &> 重定向所有输出
注意:重定向会覆盖原文件内容 示例 find /etc/ -name passwd > file ##定向正确输出到file find /etc/ -name passwd 2> file.err ##定向错误输出到file find /etc/ -name passwd &> file.all ##定向所有输出到file > file ##清空file
2、输出追加 (1) >> ##追加正确输出到文件最后 (2) 2>> ##追加错误输出到文件最后 (3) &>> ##追加所有输出到文件最后
注意: 追加不会覆盖源文件内容
示例:
find /etc/ -name passwd >> file ##追加正确输出到file find /etc/ -name passwd 2>> file.err ##追加错误输出到file find /etc/ -name passwd &>> file.all ##追加所有输出到file
3.管道的应用 1.管道的作用 “|” 管道的作用是把前一条命令的输出变成后一条命令的输入
注意: 管道只允许正确输出通过 通过管道的输入将会变成输入,而变成输入的这些输出是会被第二条命令处理的 如果需要保存输出内容,那么需要复制一份输出,用到的命令是“tee”
此实验在普通用户下操作: find /etc/ -name passwd | wc -l ##会看到的结果为2,因为错误输出不能通过管道 find /etc -name passwd 2>&1|wc -l ##会看到19,因为编号为2的输出被“2>&1”转换为编号1 find /etc -name passwd 2>&1|tee file |wc -l ##保存一份输出到file再统计行数