
Estou começando com o PowerShell, tenho uma dúvida sobre este comando:
Get-WindowsFeature | where installed
Ele me retorna os recursos instalados, agora gostaria que todos os recursos fossem removidos ou disponibilizados, mas quando substituo "instalado" por removido/disponível, não me mostra nada, por quê?
Obrigado rapazes!
Responder1
No seu exemplo, o Installed
que você verificou era uma propriedade booleana. É verdadeiro ou falso, e você estava verificando todos os objetos onde estava $True
.
Removed
e Available
são valores possíveis de InstallState
, não propriedades diretamente.
Você pode ver isso com
PS> Get-Windowsfeature | Get-Member
TypeName: Microsoft.Windows.ServerManager.Commands.Feature
Name MemberType Definition
---- ---------- ----------
<extra removed>
Installed Property bool Installed {get;}
InstallState Property Microsoft.Windows.ServerManager.Commands.InstallState InstallState {get;}
<extra removed>
Experimente um destes:
Get-Windowsfeature | Where-Object { -not $_.Installed }
Get-WindowsFeature | Where-Object { $_.InstallState -eq "Available" }
Get-WindowsFeature | Where-Object { $_.InstallState -eq "Removed" }