【问题标题】:What does "2>&1" in a Windows Command Do?Windows 命令中的“2>&1”有什么作用?
【发布时间】:2017-07-01 21:02:15
【问题描述】:

对脚本进行一些维护,我发现了这一行:

ping -n 40 127.0.0.1 > NUL 2>&1

我知道from this question 直到 NUL 的所有内容都会导致脚本休眠 39 秒。但我不知道该命令的其余部分是做什么的。

2>&1 有什么作用?

【问题讨论】:

标签: windows cmd sleep ping io-redirection


【解决方案1】:

分解线

ping -n 40 127.0.0.1

向本地主机发送 40 个 ping 数据包。如果没有任何问题,默认行为是在数据包之间等待 1 秒,因此会产生 39 秒的延迟

>nul   or   1>nul

将写入标准输出流(流号 1)的任何内容重定向到nul 设备。发送到此设备的任何内容都将被丢弃。效果是ping命令的所有正常输出都被隐藏了。

2>&1

这会将写入的任何内容重定向到标准错误流(流号 2)。与前一种情况一样,这样做是为了隐藏输出(在这种情况下是错误),但不是直接请求写入nul 设备(我们可以这样做2>nul),此语法请求在标准错误流到标准输出流中使用的句柄的副本。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-02-13
    • 1970-01-01
    • 1970-01-01
    • 2023-01-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-03-03
    相关资源
    最近更新 更多