shell中 >/dev/null 2>&1 是什么意思

9 篇文章 0 订阅

简略的说,>/dev/null是把标准输出放到黑洞(即没地方保存),

2>&1 是把错误输出并到标准输出流

两个合起来,就是错误输出和标准输出都进黑洞了。

linux在执行shell命令之前,就会确定好所有的输入输出位置,并且从左到右依次执行重定向的命令。那么我们同样从左到右地来分析 2>&1 >/dev/null :

  1. 2>&1,将错误输出绑定到标准输出上。由于此时的标准输出是默认值,也就是输出到屏幕,所以错误输出会输出到屏幕。
  2. >/dev/null,将标准输出1重定向到/dev/null中。

我们用一个表格来更好地说明这两条命令的区别:

命令标准输出错误输出
>/dev/null    2>&1丢弃丢弃
2>&1    >/dev/null丢弃屏幕

详见:https://www.cnblogs.com/everest33Tong/p/11553383.html

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值