Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

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 Active Directory: Nur einen Benutzername ausgeben!

Frage Microsoft

Mitglied: gabeBU

gabeBU (Level 1) - Jetzt verbinden

24.02.2014, aktualisiert 10:22 Uhr, 2245 Aufrufe, 3 Kommentare

Hallo Zusammen

Mein Script wächst und wächst. Ich kann jetzt schon Benutzer per CSV hinzufügen mit richtigen Passwort und aktiviert. Der nächste Schritt wäre, das ich den Benutzer aus der AD direkt vergleiche mit den Einträgen im CSV und den Nutzer nur erstelle, wenn er in der Liste nicht schon vorhanden ist. Also anderst gesagt so:
01.
Import-Module ActiveDirectory; 
02.
$Zaehler = 0 
03.
$Import = @(Import-CSV C:\users\administrator\desktop\test.csv) 
04.
$Reihenzaehler = $Import | Measure-Object; 
05.
$Benutzername =  $Import[$Zaehler].sAMAccountName; 
06.
 
07.
 
08.
do 
09.
{  
10.
$ADAbfrage = get-aduser -Identity $Benutzername| FT SamAccountName -A; 
11.
 
12.
$Benutzername 
13.
$ADAbfrage 
14.
 if ($Benutzername -ne $ADAbfrage ) 
15.
16.
csvde -i -k -f C:\users\Administrator\Desktop\test.csv   
17.
Set-AdAccountPassword -Identity $Benutzername -PassThru -Reset -Newpassword (ConvertTo-Securestring $Import[$Zaehler].sAMAccountName -Asplaintext -force) 
18.
$Zaehler = $Zaehler + 1;  
19.
 
20.
write-host "pip" 
21.
22.
elseif ($Benutzername -eq  $ADAbfrage) 
23.
24.
 write-host "nix da, gibts schon"; 
25.
26.
 
27.
}while ($Reihenzaehler > $Zaehler  ) 
Nur leider erkennt er den Benutzername in der CSV immer als "anderst", da das Format von Get-ADUser anderst ist. Wie kann in den Nutzernamen einfach nur als eine einzelne Textzeile ausgeben ohne irgendeine Formatierung?

Besten Dank für eure Antworten.

Gruss

gabeBu
Mitglied: Rolf-Hanka.ITD
24.02.2014 um 09:41 Uhr
Hey schau hier mal rein vielleicht hilft dir das.

http://social.technet.microsoft.com/Forums/de-DE/73a58cfb-a60a-4cef-b59 ...

Ansonsten noch was:

Wenn du das Script später über deine AD laufen lässt wird er ja meckern das die User schon vorhanden sind. Wenn du dann was bearbeiten willst oder ändern macht sich ldif besser als csv.

LG
Bitte warten ..
Mitglied: colinardo
24.02.2014, aktualisiert um 10:21 Uhr
Wie kann in den Nutzernamen einfach nur als eine einzelne Textzeile ausgeben ohne irgendeine Formatierung?
get-aduser -Identity $Benutzername | select -ExpandProperty SamAccountName
und noch als Hinweis, Ausgaben mit format-table / format-list etc. machen aus Objekten einen String mit Spaltenüberschriften, für das Weiterverarbeiten in Schleifen sollte man dies unbedingt vermeiden !!

By the way, die CSVDE-Zeile macht das ganze doch alles automatisch, d.h. mit der Option "-k" werden Import-Fehler ignoriert, d.h. wenn ein Benutzer schon existiert wird dieser auch nicht erneut angelegt, weil das ja ein Fehler auswirft. Also brauchst du deine Prüfung garnicht ...
Es reicht dein:
csvde -i -k -f "C:\users\Administrator\Desktop\test.csv"
wenn du es unbedingt wie oben machen willst, geht es auch cleaner so:
01.
Import-Module ActiveDirectory 
02.
$import = Import-CSV "C:\users\administrator\desktop\test.csv" 
03.
foreach($line in $import){ 
04.
    $ADAbfrage = get-aduser -Identity $line.sAMAccountName -ErrorAction SilentlyContinue 
05.
    if (!$ADAbfrage){ 
06.
        # Hier den Benutzer erstellen ... 
07.
 
08.
        # Passwort setzen 
09.
        Set-AdAccountPassword -Identity $line.sAMAccountName -PassThru -Reset -Newpassword (ConvertTo-Securestring $line.sAMAccountName -Asplaintext -force) 
10.
11.
}
Die Codezeile (7) für das Erstellen des Benutzers habe ich rausgelassen, die hatte ich dir ja schon mal gepostet

Grüße Uwe
Bitte warten ..
Mitglied: gabeBU
24.02.2014 um 12:41 Uhr
Danke vielmals für die Hilfe.

Ja wisst ihr, später soll eben das Script Benutzer die in der alten CSV waren und jetzt nicht mehr vorhanden sind direkt aus der AD rauslöschen, deswegen denke ich, dass solch eine Abfrage es schon bringen würde.
Bitte warten ..
Ähnliche Inhalte
Windows Server
gelöst Active Directory Report (7)

Frage von mah0ni zum Thema Windows Server ...

Windows Server
gelöst Migration Manager for Active Directory (3)

Frage von adrian138 zum Thema Windows Server ...

Neue Wissensbeiträge
Windows Update

Microsoft Update KB4034664 verursacht Probleme mit Multimonitor-Systemen

(2)

Tipp von beidermachtvongreyscull zum Thema Windows Update ...

Viren und Trojaner

CNC-Fräsen von MECANUMERIC werden (ggf.) mit Viren, Trojanern, Würmern ausgeliefert

(4)

Erfahrungsbericht von anteNope zum Thema Viren und Trojaner ...

Windows 10

Windows 10: Erste Anmeldung Animation deaktivieren

(3)

Anleitung von alemanne21 zum Thema Windows 10 ...

Heiß diskutierte Inhalte
Netzwerkprotokolle
gelöst Leiten "dumme" Switches VLAN-Tags mit durch? (26)

Frage von coltseavers zum Thema Netzwerkprotokolle ...

Netzwerkgrundlagen
Kann auf Freigabe nicht Zugreifen (16)

Frage von leon123 zum Thema Netzwerkgrundlagen ...

Windows Server
gelöst Neues KB für W10 1607 und W2K16 wieder mal nicht im WSUS 3.0, hat das noch jemand? (16)

Frage von departure69 zum Thema Windows Server ...

Exchange Server
Apple Mail mit Exchange 2010 verbinden (12)

Frage von DieAzubinne zum Thema Exchange Server ...