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

AD-Benutzer mit spezifischem AD-Attribut NOT null finden

Ich bin auf der Suche nach einem Skript/Powershell-Befehl, der alle AD-Benutzer auflistet, die einen Wert nicht NULL im Attribut “teletexterminalidentifier” haben, d. h. sie müssen einen Wert festgelegt haben.

Standardmäßig ist dieses Attribut nicht festgelegt, aber wir haben eine Anwendung, die dieses Attribut ändert (damit es eine hexadezimale Zeichenfolge enthält), daher suche ich nach einer Liste aller Benutzer, die dieses Attribut auf etwas festgelegt haben.

Danke!

Antworten (3)

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

Sie sollten in der Lage sein, die Benutzer zu erhalten, indem Sie verwenden:

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

Sie können dann filtern, was Sie brauchen, indem Sie den Befehl eingeben:

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

Wobei Sie mit Select-Object auswählen können, aus welchen Feldern Sie die Informationen nach Namen erhalten möchten.

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

Ich denke, was Sie suchen, ist das Cmdlet “Where-Object”. Hier ist etwas Pseudocode, um Ihnen zu helfen:

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

Wenn Sie Benutzer basierend auf dieser Eigenschaft filtern möchten, müssen Sie den Schalter -properties zum Cmdlet Get-ADuser hinzufügen. Ohne diesen Schalter lädt es nämlich nur grundlegende Eigenschaften (Member) für Benutzerobjekte.

Hier ist also der vollständige Befehl, um zu erreichen, was Sie wollen :

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

Es wird diese Art von Ergebnis erzeugen :

Dann können Sie das Ergebnis in das gewünschte Format exportieren.

Hoffentlich hilft das!