【问题标题】:Add to array without echoing index添加到数组而不回显索引
【发布时间】:2017-12-19 07:22:05
【问题描述】:

我正在使用以下命令将项目添加到名为 $MissingIps 的数组中

$MissingIps = @("")
[System.Collections.ArrayList]$ExistingIps = $MissingIps
if ($lbips -notcontains $awsip){
    $MissingIps.Add("$awsip")
}

在执行时,PowerShell 会自动回显索引位置,而我正在努力隐藏它。

有什么想法吗?

【问题讨论】:

    标签: arrays windows powershell scripting


    【解决方案1】:

    作为抑制不需要的输出的建议方法的替代方法:首先不要使用ArrayList 集合。生成输出的是该类的Add() 方法。如果您使用常规数组,则可以在不生成输出的情况下追加:

    $MissingIps = @()
    if ($lbips -notcontains $awsip){
        $MissingIps += $awsip
    }
    

    【讨论】:

      【解决方案2】:

      这将完成工作:

      $MissingIps = @("")
          [System.Collections.ArrayList]$ExistingIps = $MissingIps
          if ($lbips -notcontains $awsip){
              $MissingIps.Add("$awsip") | out-null
          }
      

      【讨论】:

      • 其他可能性是[void]$MissingIps.Add("$awsip") 和(但更丑)$null = $MissingIps.Add("$awsip")
      • @MickyBalladelli:是的。或者我们可以将其重定向到$MissingIps.Add("$awsip") >> $null
      • @RanadipDutta 谢谢。你原来的解决方案成功了:)
      猜你喜欢
      • 2011-03-14
      • 1970-01-01
      • 2011-06-28
      • 1970-01-01
      • 2013-11-17
      • 1970-01-01
      • 1970-01-01
      • 2021-05-23
      • 2013-03-01
      相关资源
      最近更新 更多