输出重定向
Posted 曹孟德
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了输出重定向相关的知识,希望对你有一定的参考价值。
1 关于标准输入和输出
键盘 0 标准输入
显示屏 1 标准输出
显示屏 2 标准错误输出
2 输出重定向
1)标准输出重定向
命令 > 文件 以覆盖的方式将命令的正确输出输入到指定文件或者设备中
命令 >> 文件 以追加的方式将正确命令输出到指定的文件或者系统中
2)标准错误输出重定向
错误命令 2>文件 以覆盖的方式错误命令输出到指定文件或者设备中
错误命令 2>文件 以追加的方式将错误的命令输出到指定的文件或者系统中
注意:标准错误输出重定向中 2>文件 和 2>>文件 之间是没有空格的
[email protected]:~$ ls > test [email protected]:~$ cat test test Untitled 2.odt workspace 公共的 模板 视频 图片 文档 下载 音乐 桌面 [email protected]:~$ ls cangls 2>>test [email protected]:~$ cat test test Untitled 2.odt workspace 公共的 模板 视频 图片 文档 下载 音乐 桌面 ls: 无法访问‘cangls‘: 没有那个文件或目录
3 正确出和错误输出同时保存
1)命令 > 文件 2>&1
命令 >> 文件 2>&1
上述命令表明 :如果是正确输出,则直接保存在文件中,如果是错误输出则将错误输出重定向到正确输出,依然保存在文件中。
即为表示无论是正确输出还是错误输出都重定向保存在文件中。
[email protected]:~$ ls >> test.log 2>&1 [email protected]:~$ cat test cat: test: 没有那个文件或目录 [email protected]10P:~$ cat test.log test.log Untitled 2.odt workspace 公共的 模板 视频 图片 文档 下载 音乐 桌面 [email protected]:~$ ls cangls >> test.log 2>&1 [email protected]:~$ cat ^C [email protected]:~$ cat test.log test.log Untitled 2.odt workspace 公共的 模板 视频 图片 文档 下载 音乐 桌面 ls: 无法访问‘cangls‘: 没有那个文件或目录
2)命令 &>文件
命令 &>>文件
[email protected]:~$ rm test.log [email protected]:~$ ls &>>test.log [email protected]:~$ cat test.log test.log Untitled 2.odt workspace 公共的 模板 视频 图片 文档 下载 音乐 桌面 [email protected]:~$ ls cangls &>>test.log [email protected]:~$ cat test.log test.log Untitled 2.odt workspace 公共的 模板 视频 图片 文档 下载 音乐 桌面 ls: 无法访问‘cangls‘: 没有那个文件或目录
3)命令>文件1 2>文件2
命令>>文件1 2>>文件2
将正确出处输入文件1 将错误输出输入文件2,即为单独保存。
[email protected]:~$ ls >>test1.log 2>>test2.log [email protected]:~$ ls cangls >>test1.log 2>>test2.log [email protected]:~$ cat test1.log test1.log test2.log Untitled 2.odt workspace 公共的 模板 视频 图片 文档 下载 音乐 桌面 [email protected]:~$ cat test2.log ls: 无法访问‘cangls‘: 没有那个文件或目录
以上是关于输出重定向的主要内容,如果未能解决你的问题,请参考以下文章