linux输入输出重定向

1.系统中输入输出的管理

1.1 管理输入输出的符号

(1)输出重定向

>   ##重定向正确输出

2> ##重定向错误输出

&> ##重定向所有输出

注意:

重定向会覆盖原文件内容

 

此实验在普通用户下操作:

find /etc/ -name passwd  > file ##定向正确输出到file

find /etc/ -name passwd  2> file.err ##定向错误输出到file

 

find /etc/ -name passwd  &> file.all ##定向所有输出到file

> file ##清空file

 

(2)输出追加

>>   ##追加正确输出到文件最后

2>> ##追加错误输出到文件最后

&>> ##追加所有输出到文件最后

 

注意:

追加不会覆盖原文件内容

 

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再统计行数

 

(4)输入重定向

cat >file <<EOF

hello

world

EOF

 

猜你喜欢

转载自blog.csdn.net/vhkgcf/article/details/81104367