Linux数据流的重定向
>覆盖内容;>>追加内容;<和>的区别在于重定向方向不一致,>表示重定向从左到右;>>和<<类似
简单的重定向
- 0 /dev/stdin 标准输入
- 1 /dev/stdout 标准输出
- 2 /dev/stderr 标准错误
注意:管道是连接两个命令,前一个命令的输出作为后一个命令的输入;重定向通常需要一个文件作为两个命令的连接 e.g.:echo 'hello,world'>somefile
标准错误重定向
e.g.:(假设Document目录下不存在test.c文件)
cat Document/test.c >somefile 2>&1或者
cat Document/test.c &>somefile
注意:在标准错误重定向中,重定向文件描述符前应加&
同时重定位到多个文件tee
不仅重定位到文件,而且打印到终端
e.g.:echo 'hello'|tee somefile
永久重定向/创建输出描述符/关闭文件描述符exec
屏蔽命令输出
使用特殊的设备文件:/dev/null,吞噬所有输入到此设备的数据