您当前的位置:
首页
>
计算机
>
编程开发
>
Shell
Shell 输入/输出的重定向含义(>、>>、2>、2>>、&>、&>>、1>&2、2>&1)
时间:02-23
来源:
作者:
点击数:
一、简介
这里以
ls
命令进行举例。
$ ls
总结:
一个
>
的是每次覆盖导出结果,两个
>
的是在文件尾部追加导出结果。
>
:导出成功结果,不支持导出失败结果。
2>
:导出失败结果,不支持导出成功结果。
$>
:支持导出上面两种结果,混合导出。
如何区分是否导出成功?
在屏幕上输出了就是导出失败,没有输出则导出成功。
二、详细案例
>
:将命令运行
成功
结果导出到指定文件,只能导出
成功
的结果,
失败/错误
的结果无法导出。
$ ls > ls.txt
测试失败结果:
ls.txt
里面是空的,导入失败。
>>
:将命令运行
成功
结果导出
追加
到指定文件尾部,只能导出
成功
的结果,
失败/错误
的结果无法导出。
2>
:将命令运行
失败/错误
结果导出到指定文件,只能导出
失败/错误
的信息,
成功
的结果无法导出。
测试成功结果:
ls.txt
里面是空的,导入失败。
2>>
:将命令运行
失败/错误
结果导出
追加
到指定文件尾部,只能导出
失败/错误
的信息,
成功
的结果无法导出,截图案例就不贴了。
&>
:将命令运行
成功/失败/错误
结果导出到指定文件,支持任何状态的结果导出。
三、进阶用法
组合使用,成功的导出到
ls.txt
,失败的导出到
ls2.txt
。
$ ls ls.txt dzm.txt > ls.txt 2> ls2.txt
组合使用,成功的导出到
ls.txt
,失败的导出到
ls.txt
。
1>
通常可以省略成
>
,有了这些认识才能理解
1>&2
和
2>&1
。
1>&2
正确返回值传递给
2
输出通道
&2
表示
2
输出通道,如果此处错写成
1>2
, 就表示把
1
输出重定向到文件
2
中。
2>&1
错误返回值传递给
1
输出通道,同样
&1
表示
1
输出通道。
$ ls ls.txt dzm.txt > ls.txt 2>&1
方便获取更多学习、工作、生活信息请关注本站
微信公众号
来顶一下
返回首页
上一篇:
Shell 脚本输出命令结果保持原格式,保留换行
下一篇:
Shell 管道 | 符号
推荐内容
高考生入学注意:这些大
【健康】纯净水、天然
14种竞赛生升学路径盘
excel后缀xls和xlsx有
相关内容
Shell 脚本输出命令结果保持原格式,保留换行
Nginx rewrite(URL)地址重定向
解决Ubuntu下Qt Creator无法输入中文
Linux下将控制台输出保存至文件
python将控制台输出保存至文件
汇编程序---输出26个大写字母(A~Z)
使用c++编写:将一个正整数分解质因数。例如:输入90,打印
全网最准确的Ubuntu 20.04 安装搜狗输入法的步骤
python3 添加环境变量后 仍然无法用cmd输入python访问
逆序输出(整型)
栏目更新
栏目热门