陷阱忽略不需要的输出

灵感来自

function bar {
 [System.Collections.ArrayList]$MyVariable = @()
 $MyVariable.Add("a") | Out-Null
 $MyVariable.Add("b") | Out-Null
 $MyVariable
}

Out-Null 是必需的,因为 .NET ArrayList.Add 方法在添加后返回集合中的项目数。如果省略,管道将包含 1, 2, "a", "b"

有多种方法可以省略不需要的输出:

function bar
{
    # New-Item cmdlet returns information about newly created file/folder
    New-Item "test1.txt" | out-null
    New-Item "test2.txt" > $null
    [void](New-Item "test3.txt")
    $tmp = New-Item "test4.txt"
}

注意: 要了解有关更喜欢 > $null 的原因,请参阅[尚未创建的主题]。