PowerShell - encontrar usuários inativos e não desativados

3

Eu escrevi este cmdlet:

Search-ADAccount -filter {(enabled -eq $true)} -Users Only -SearchBase "ou=FirstOU,dc=domain,dc=com" -AccountInactive -TimeSpan 30

Mas gera um erro:

Search-ADAccount : A parameter cannot be found that matches parameter name 'fil
ter'.
At line:1 char:25
+ Search-ADAccount -filter <<<<  {(enabled -eq $true)} -UsersOnly -SearchBase "
ou=FirstOU,dc=domain,dc=com" -AccountInactive -TimeSpan 30
    + CategoryInfo          : InvalidArgument: (:) [Search-ADAccount], Paramet
   erBindingException
    + FullyQualifiedErrorId : NamedParameterNotFound,Microsoft.ActiveDirectory
   .Management.Commands.SearchADAccountCmdlet

Alguém poderia me ajudar?

    
por NirPes 04.06.2014 / 18:48

3 respostas

4

Filtrar o outro lado?:

Search-ADAccount -UsersOnly -AccountInactive -TimeSpan 30.00:00:00 |where {$_.enabled}
    
por 04.06.2014 / 19:13
4

O Search-ADAccount não aceita o parâmetro -Filter . Consulte os documentos do Technet ou Get-Help Search-ADAccount para obter uma lista de parâmetros suportados.

Você pode enviar os resultados da pesquisa para Where-Object para obter somente os usuários habilitados:

Search-ADAccount -UsersOnly -SearchBase "ou=FirstOU,dc=domain,dc=com" -AccountInactive -TimeSpan 30 |
    Where-Object { $_.Enabled -eq $true }
    
por 04.06.2014 / 18:58
0

Experimente o comando get-ADUser, que permite filtrar melhor seus usuários.

get-aduser -filter (habilitado -eq $ true) -searchbase "OU"

    
por 05.11.2015 / 00:21