Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Powershell Filtern

Frage Entwicklung Batch & Shell

Mitglied: mguenth83

mguenth83 (Level 1) - Jetzt verbinden

28.08.2013, aktualisiert 13:19 Uhr, 2620 Aufrufe, 6 Kommentare, 1 Danke

Hi,
ist vielleicht ne blöde Frage aber wie kann ich nach einem Property Filtern?

Ziel des Skriptes ist es alle User aus dem AD aufzulisten die nicht in der Gruppe Passwort sind.

01.
Get-ADUser -Filter { Name -Like "*" } -SearchBase "OU=Benutzer,DC=CONTOSO,DC=DE" -Properties *
Das Script zeigt mir jetzt schon mal alle User mit den Properties an...jetzt will ich im Endeffekt die User rausfiltern sind nicht in der Gruppe Passwort sind. Diese User sollen das aufgelistet werden.

Gruß
Matthias
Mitglied: CooC
28.08.2013, aktualisiert um 13:24 Uhr
Hallo Matthias,

<dein_kommando> | where {$_ -match "<dein_muster>"}

dürfte das sein was du suchst!
Bitte warten ..
Mitglied: 106543
28.08.2013 um 13:32 Uhr
<dein_kommando> | where {$_ -match "<dein_muster>"}
eher
01.
<dein_kommando> | where {$_ -NOmatch "<dein_muster>"}
Bitte warten ..
Mitglied: mguenth83
28.08.2013 um 13:42 Uhr
Habe es jetzt ergänzt aber leider bekomme ich keine Ausgabe
01.
Get-ADUser -Filter { Name -Like "*" } -SearchBase "OU=Benutzer,DC=CONTOSO,DC=DE" -Properties * | where {$_ -match "PASSWORT"}

Vielleicht liegt es daran das der Inhalt in Klammern steht und er es deswegen nicht findet ?

01.
MemberOf                           : {CN=PASSWORT,OU=Gruppen,DC=CONSOTO,DC=de,}
Bitte warten ..
Mitglied: colinardo
28.08.2013, aktualisiert um 15:56 Uhr
Hallo Matthias,
das kannst du zuverlässiger so machen:
01.
#hole alle Benutzer im AD 
02.
$allUsers = Get-AdUser -Filter * 
03.
 
04.
#hole nur die Benutzer in der Gruppe "Passwort" inklusive User in Untergruppen 
05.
$groupPassUsers = Get-AdGroupMember -Identity "Passwort" -recursive 
06.
 
07.
#Vergleiche beide Objekte miteinander und ziehe die Nutzer in der Gruppe "Passwort" davon ab 
08.
$diffUsers = Compare-Object -ReferenceObject $allUsers -DifferenceObject $groupPassUsers 
09.
$diffUsers
Es zeigt dir alle Nutzer die nicht in der Gruppe Passwort sind.

Grüße Uwe
Bitte warten ..
Mitglied: filippg
28.08.2013, aktualisiert um 16:02 Uhr
Hallo,

"where {$_ -match "PASSWORT"}" kann nicht so richtig funktionieren, weil du nicht angibst, welches Property gematcht werden soll.
Ich würde einen Test mit " | where {$_.memberOf -notlike "*CN=PASSWORT,OU=Gruppen*"} " empfehlen (ich bilde mir auch ein, dass -notlike/-like schneller als -nomatch/match sein, weil letztere auch RegEx parsen).

Gruß

Filipp

Edit: alle hier gezeigten Ansätze haben natürlich den Nachteil, dass sie erst alle Nutzer laden, und dann die unerwünschten mit "where" aussortieren. Hübscher wäre es, gleich nur die richtigen zu bekommen. Mit dem "-Filter"-Attribut kann man nicht immer alles filtern, was man will, wie es sich bei Get-ADUser verhält weiß ich nicht. Aber mindestens mit dem -LDAPFilter-Attribut kann man die Auswahl von vorneherein auf die gewünschten Nutzer einschränken. Websuche nach "get-aduser filter group" hilft dir bestimmt weiter.

Edit 2:
$diffUsers = Compare-Object -ReferenceObject $allUsers -DifferenceObject $groupPassUsers
Ich kann das gerade (mangels Server) nicht testen - funktioniert das? Ich dachte, Get-AdUser liefert einen User, während Get-AdGroupMember einen anderen Datentyp liefert (GroupMember können ja auch Gruppen und im Zweilfesfall sogar Kontakte sein), und die Datentypen lassen sich nicht vergleichen (wenn man wiederum nur den DN selektiert, müsste es gehen)
Bitte warten ..
Mitglied: mguenth83
30.08.2013 um 10:07 Uhr
Hi,
bin endlich wieder mal am PC und wollt Euch rückmeldung geben. Danke an colinardo das Script hat soweit funktioniert. Habe ein paar Kontrollen ausgeführt und es scheint alles richtig zu sein. Filppg deine Variante habe ich noch nicht ausprobiert aber werde ich auf jedenfall am Wochenende in einer ruhen Minute mal angehen und gebe das Rückmeldung

Danke nochmal an alle die mir bei den ersten Schritten in Sachen Powershell geholfen haben.

Gruß
Matze
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
gelöst Powershell Get-Content Inhalt filtern (1)

Frage von derhoeppi zum Thema Batch & Shell ...

Windows Netzwerk
DHCP MAC Filter unter W2008R2 (2)

Frage von sabines zum Thema Windows Netzwerk ...

Windows Server
gelöst WMI-Filter Syntax (10)

Frage von DasWombat1993 zum Thema Windows Server ...

Datenbanken
gelöst Access 2010 Filter zurücksetzen (6)

Frage von Dr.Cornwallis zum Thema Datenbanken ...

Neue Wissensbeiträge
Humor (lol)

Wo ist der Fehler auf dem Bild?

(15)

Information von the-buccaneer zum Thema Humor (lol) ...

Windows Update

Offenbar erneutes MS-Update mit Fehlerschleife (2012 R2)

Information von VGem-e zum Thema Windows Update ...

Windows Installation

Unorthodoxer Weg, um an einen Offline-Installer für Adobe Flash zu kommen

(14)

Tipp von beidermachtvongreyscull zum Thema Windows Installation ...

Heiß diskutierte Inhalte
Lizenzierung
Programm soll in verschiedenen Versionen lizenziert sein (20)

Frage von Yanmai zum Thema Lizenzierung ...

Windows Installation
Unorthodoxer Weg, um an einen Offline-Installer für Adobe Flash zu kommen (14)

Tipp von beidermachtvongreyscull zum Thema Windows Installation ...

Microsoft Office
Access Hilfe benötigt (13)

Frage von DieAzubinne zum Thema Microsoft Office ...

Windows Userverwaltung
Ordner-Rechte für Dom.Admin einschränken? (13)

Frage von kilobyte zum Thema Windows Userverwaltung ...