Benutzer mit den meisten Antworten
liste alle user mit feld mail

Frage
-
ich suchen einen powershell befehl der mir alle user auflistet und auch das feld mail (also nicht exchange proxyaddresses) sondern das NT Attribute "mail" und eventl. mailnickname und displayname
was passiert mit denen wo das attribut nicht vorhanden ist da kein Wert gesetzt ist? Die wäre natürlich ganz wichtig, dass diese als Displayname dabei sind.
danke
Chris
Antworten
-
Das geht z.b. so:
$ADsearcher = New-Object System.DirectoryServices.DirectorySearcher $ADsearcher.Filter = "(objectCategory=person)" $allusers = $ADsearcher.findall() foreach ($user in $allusers) { write-host $user.properties.samaccountname "," $user.properties.displayname "," $user.properties.mail "," $user.Properties.mailnickname }
Das Script benutzt ein DirectoySearcher-Objekt und filtert alle Userobjekte aus der aktuellen Domäne und listet die gewünschten Attribute.Lies auch bitte mal diesen Post.
Grüße, Denniver
http://bytecookie.wordpress.com/- Als Antwort markiert Denniver ReiningMVP, Moderator Dienstag, 5. Juli 2011 23:36
-
Du kannst dir auch die ActiveRoles Management Shell von Quest installiert, dann geht's einfacher.
Get-QADUser | ft DisplayName,Mail
Die User bei denen das Attribut Mail fehlt, werden auch angezeigt.
Gruß
Martin
- Als Antwort markiert Denniver ReiningMVP, Moderator Dienstag, 5. Juli 2011 23:36
-
Für Ad-hoc-Abfragen vom immer gleichen Adminrechner sind die AD-Cmdlets von Quest ne prima Sache. Für Scripte die auch mal auf nem anderen Rechner bzw. Server laufen sollen, finde ich es allgemein aber eher kontraproduktiv immer nachschauen zu müssen, welche externen Snap-ins noch installiert werden müssen, damit das Skript läuft. Das gilt insbesondere wenn Scripte nur von Zeit zu Zeit oder von unterschiedlichen Leuten benutzt werden.
Die Quest-Cmdlets gibts übrigens hier.
Grüße, Denniver
http://bytecookie.wordpress.com/- Als Antwort markiert -- Chris -- Mittwoch, 6. Juli 2011 05:11
-
>Du kannst dir auch die ActiveRoles Management Shell von Quest installiert, dann geht's einfacher.
Mit den Exchange-Erweiterungen wäre es genauso einfach. Oder die PowerShell 2 auf einem Windows 2008 R2 mit den AD-Cmdlets.
Aber ich sehe das wie Denniver: Wenn man die Rechner alle kennt, kann man ein Zusatzwerkzeug nutzen, sonst lieber mit Werkzeugen, die überall funktionieren. Da sind so schon genau Stolperstellen drin (32/64-Bit, Berechtigungen, usw.).
Grüße aus Berlin schickt Robert
MVP Exchange Server- Als Antwort markiert -- Chris -- Mittwoch, 6. Juli 2011 05:11
Alle Antworten
-
Das geht z.b. so:
$ADsearcher = New-Object System.DirectoryServices.DirectorySearcher $ADsearcher.Filter = "(objectCategory=person)" $allusers = $ADsearcher.findall() foreach ($user in $allusers) { write-host $user.properties.samaccountname "," $user.properties.displayname "," $user.properties.mail "," $user.Properties.mailnickname }
Das Script benutzt ein DirectoySearcher-Objekt und filtert alle Userobjekte aus der aktuellen Domäne und listet die gewünschten Attribute.Lies auch bitte mal diesen Post.
Grüße, Denniver
http://bytecookie.wordpress.com/- Als Antwort markiert Denniver ReiningMVP, Moderator Dienstag, 5. Juli 2011 23:36
-
Du kannst dir auch die ActiveRoles Management Shell von Quest installiert, dann geht's einfacher.
Get-QADUser | ft DisplayName,Mail
Die User bei denen das Attribut Mail fehlt, werden auch angezeigt.
Gruß
Martin
- Als Antwort markiert Denniver ReiningMVP, Moderator Dienstag, 5. Juli 2011 23:36
-
Für Ad-hoc-Abfragen vom immer gleichen Adminrechner sind die AD-Cmdlets von Quest ne prima Sache. Für Scripte die auch mal auf nem anderen Rechner bzw. Server laufen sollen, finde ich es allgemein aber eher kontraproduktiv immer nachschauen zu müssen, welche externen Snap-ins noch installiert werden müssen, damit das Skript läuft. Das gilt insbesondere wenn Scripte nur von Zeit zu Zeit oder von unterschiedlichen Leuten benutzt werden.
Die Quest-Cmdlets gibts übrigens hier.
Grüße, Denniver
http://bytecookie.wordpress.com/- Als Antwort markiert -- Chris -- Mittwoch, 6. Juli 2011 05:11
-
>Du kannst dir auch die ActiveRoles Management Shell von Quest installiert, dann geht's einfacher.
Mit den Exchange-Erweiterungen wäre es genauso einfach. Oder die PowerShell 2 auf einem Windows 2008 R2 mit den AD-Cmdlets.
Aber ich sehe das wie Denniver: Wenn man die Rechner alle kennt, kann man ein Zusatzwerkzeug nutzen, sonst lieber mit Werkzeugen, die überall funktionieren. Da sind so schon genau Stolperstellen drin (32/64-Bit, Berechtigungen, usw.).
Grüße aus Berlin schickt Robert
MVP Exchange Server- Als Antwort markiert -- Chris -- Mittwoch, 6. Juli 2011 05:11
-
Quest hat funktioniert - sogar mit einem Einzeiler. Werde mir aber sicher auch die PowerShell 2 ansehen, da ich der Meinung bin, es sollte mit Microsoft Boardmittel inzwischen auch schon funktionieren.
Chris- Als Antwort markiert -- Chris -- Mittwoch, 6. Juli 2011 05:11
- Tag als Antwort aufgehoben Denniver ReiningMVP, Moderator Samstag, 9. Juli 2011 21:47