Powershell 是否使用“不”筛选集合?

Powershell 是否使用“不”筛选集合?,powershell,Powershell,我收集了如下数据: server : ExchangeServer drive : C: server : ExchangeServer drive : R: server : DomainController drive : C: server : AnOtherServer drive : C: 但是这个集合最终只是一个带有R:drives的Exchange服务器列表 是否有一个“not”选项用于Where Object?您当前的条件选择的元素是Exchange服务器并具有驱动器R:。

我收集了如下数据:

server : ExchangeServer drive : C: server : ExchangeServer drive : R: server : DomainController drive : C: server : AnOtherServer drive : C: 但是这个集合最终只是一个带有R:drives的Exchange服务器列表

是否有一个“not”选项用于
Where Object

您当前的条件选择的元素是Exchange服务器并具有驱动器
R:
。要排除具有驱动器
R:
的Exchange服务器,您需要反转该条件:

$PerfCollection | Where-Object -FilterScript {
  -not ($_.drive –eq "R:" -and $_.server -like "*ExchangeServer*")
}

@仅此一点是不够的。您还必须将
-和
更改为
-或
,否则它将排除没有驱动器
R:
的Exchange服务器或带有驱动器
R:
的服务器,这些服务器也不是Exchange服务器<代码>!(A^B)!A v!B
$PerfCollection | Where-Object -FilterScript {
  -not ($_.drive –eq "R:" -and $_.server -like "*ExchangeServer*")
}