2014-05-01 13:09:26 +0000 2014-05-01 13:09:26 +0000
12
12

Trova gli utenti AD con uno specifico attributo AD NON nullo

Sto cercando uno script/comando Powershell che elenchi tutti gli utenti AD che hanno un valore non NULL nell'attributo teletexterminalidentifier, quindi devono avere un valore impostato.

Di default questo attributo non è impostato, ma abbiamo un'applicazione che modifica questo attributo (per contenere una stringa esadecimale), quindi sto cercando una lista di tutti gli utenti che hanno questo attributo impostato a qualcosa.

Grazie!

Risposte (3)

10
10
10
2014-05-01 13:32:26 +0000

Dovreste essere in grado di ottenere gli utenti usando:

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

Potete poi filtrare ciò che vi serve inserendo il comando:

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

dove Select-Object ti permette di selezionare da quali campi vuoi ottenere le informazioni per nome.

4
4
4
2014-05-01 13:23:46 +0000

Penso che quello che stai cercando sia il cmdlet Where-Object. Ecco un po’ di pseudo codice per aiutarti:

Get-ADUser -Filter * | Where-Object {$_.teletexterminalidentifier -ne $null} | Export-Csv c:\list.csv
1
1
1
2014-05-02 09:33:04 +0000

Se vuoi filtrare gli utenti in base a questa proprietà, devi aggiungere lo switch -properties alla Get-ADuser Cmdlet. Infatti, senza questo switch, carica solo le proprietà di base (membri) per gli oggetti utente.

Quindi, ecco il comando completo per ottenere ciò che vuoi:

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

Produrrà questo tipo di risultato:

Poi potrai esportare il risultato nel formato desiderato.

Spero che questo ti aiuti!