linux命令后面的 1>> /dev/null 2>&1 是什么意思?

zengjd 2015-09-08 02:01:43
1>> /dev/null 2>&1
linux命令后面的 1>> /dev/null 2>&1 是什么意思?
...全文
1836 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
cqyy725 2015-09-10
  • 打赏
  • 举报
回复
引用 2 楼 zengjd 的回复:
[quote=引用 1 楼 lishanchao 的回复:] 1>> /dev/null 2>&1 对于/dev/null设备一般不存在附加的说法,虽然这么写没错。一般写成: 1>/dev/null 2>&1 1>/dev/null 含义是把标准输出重定向到/dev/null,其实就是屏蔽标准输出。 2>&1 是把标准错误重定向到标准输出,也就是fprintf(stderr, "error msg");的信息会被打印到stdout上。 结合起来就是屏蔽所有输出信息。 至于为什么采用>,>>以及>&这些符号,我也不清楚,前两者还算直观,>&这个我也是理解不能。 可以查看sh实现源码,通过代码了解这些符号的实现,希望注释中能有一些蛛丝马迹描述为什么采用这个符号。
谢谢。[/quote] > 是覆盖 》是追加
zengjd 2015-09-10
  • 打赏
  • 举报
回复
引用 1 楼 lishanchao 的回复:
1>> /dev/null 2>&1 对于/dev/null设备一般不存在附加的说法,虽然这么写没错。一般写成: 1>/dev/null 2>&1 1>/dev/null 含义是把标准输出重定向到/dev/null,其实就是屏蔽标准输出。 2>&1 是把标准错误重定向到标准输出,也就是fprintf(stderr, "error msg");的信息会被打印到stdout上。 结合起来就是屏蔽所有输出信息。 至于为什么采用>,>>以及>&这些符号,我也不清楚,前两者还算直观,>&这个我也是理解不能。 可以查看sh实现源码,通过代码了解这些符号的实现,希望注释中能有一些蛛丝马迹描述为什么采用这个符号。
谢谢。
nswcfd 2015-09-10
  • 打赏
  • 举报
回复
x>&y,基本上相当于dup2(x,y),让文件描述符#y跟文件描述符#x指向同一个文件
沭水河畔 2015-09-08
  • 打赏
  • 举报
回复
1>> /dev/null 2>&1 对于/dev/null设备一般不存在附加的说法,虽然这么写没错。一般写成: 1>/dev/null 2>&1 1>/dev/null 含义是把标准输出重定向到/dev/null,其实就是屏蔽标准输出。 2>&1 是把标准错误重定向到标准输出,也就是fprintf(stderr, "error msg");的信息会被打印到stdout上。 结合起来就是屏蔽所有输出信息。 至于为什么采用>,>>以及>&这些符号,我也不清楚,前两者还算直观,>&这个我也是理解不能。 可以查看sh实现源码,通过代码了解这些符号的实现,希望注释中能有一些蛛丝马迹描述为什么采用这个符号。

19,612

社区成员

发帖
与我相关
我的任务
社区描述
系统使用、管理、维护问题。可以是Ubuntu, Fedora, Unix等等
社区管理员
  • 系统维护与使用区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧