【问题标题】:What is the ">" operator in PowerShell?PowerShell 中的“>”运算符是什么?
【发布时间】:2014-06-20 18:45:36
【问题描述】:

我试过四处搜索,但找不到答案,部分原因是很难搜索 ">" 字符,也因为 PowerShell 中的提示使用该字符。

我有一个很好的例子,但我不知道这条线到底在做什么:

New-Item $tempCmd -Force -Type file > $null

我得到了 New-Item 调用及其参数,但是 "> $null" 到底在做什么?具体而言,“>”在这句话中扮演什么角色?

【问题讨论】:

标签: powershell


【解决方案1】:

> 字符会进行输出重定向。 在an example 中,它似乎通过将输出重定向到 null 来抑制输出。

【讨论】:

    【解决方案2】:

    Microsoft 已发布 PowerShell 2.0PowerShell 3.0 的语言规范。

    从 3.0 版开始:

    重定向运算符 > 从管道中获取标准输出并将其重定向到由 redirected-file-name 指定的位置,覆盖该位置的当前内容。

    您的示例文件名为空,因此输出无处可去。

    正如nochkin 所说,人们通常这样做是为了阻止命令产生输出。默认情况下,New-Item 会将有关新项目的元数据输出到主机。

    要以更易读的方式实现相同的目标,您可以将输出通过管道传输到 Out-Null

    New-Item $tempCmd -Force -Type file | Out-Null
    

    来自文档:

    删除输出而不是将其发送到管道中。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-05-11
      • 2013-07-31
      • 1970-01-01
      • 1970-01-01
      • 2010-12-19
      • 2021-12-04
      • 2021-10-28
      • 2021-02-13
      相关资源
      最近更新 更多