Localizar usuários do AD com atributo específico do AD NOT null

11

Estou procurando um script / comando Powershell que liste todos os usuários do AD que têm um valor não NULL no atributo teletexterminalidentifier, portanto, eles devem ter um conjunto de valores.

Por padrão, este atributo não está definido, mas temos um aplicativo que modifica esse atributo (para conter uma string hexadecimal), portanto, estou procurando uma lista de todos os usuários que têm esse atributo definido como algo.

Obrigado!

    
por Johan 01.05.2014 / 15:09

3 respostas

9

Você deve conseguir os usuários usando:

Get-ADUser -Filter 'teletexterminalidentifier -like "*"'

Você pode então filtrar o que precisa encanando o comando:

Get-ADUser -Filter 'teletexterminalidentifier -like "*"' | Select-Object name,teletexterminalidentifier | Export-Csv file.csv

Em que Select-Object permite selecionar de quais campos você deseja obter as informações por nome.

    
por 01.05.2014 / 15:32
4

Acho que o que você está procurando é o cmdlet Where-Object. Veja alguns pseudo-códigos para ajudá-lo:

Get-ADUser -Filter * | Where-Object {$_.teletexterminalidentifier -ne $null} | Export-Csv c:\list.csv
    
por 01.05.2014 / 15:23
1

Se você deseja filtrar usuários com base nessa propriedade, é necessário adicionar a opção -properties ao Get-ADuser Cmdlet. De fato, sem esse switch, ele carrega apenas propriedades básicas (membros) para objetos de usuário.

Assim, aqui está o comando completo para conseguir o que você quer:

Get-ADUser -filter * -Properties * | ? {$_.teletexterminalidentifier -ne $null} | Select-Object CN,SamAccountName,Teletexterminalidentifier

Isso produzirá esse tipo de resultado:

Em seguida, você poderá exportar o resultado para o formato desejado.

Espero que isso ajude!

    
por 02.05.2014 / 11:33

Tags