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

CSVDE über Powershell protokollierbar?

Frage Microsoft Windows Server

Mitglied: Belloci

Belloci (Level 2) - Jetzt verbinden

22.04.2013 um 08:45 Uhr, 1820 Aufrufe, 4 Kommentare

Einen schönen Montag wünsche ich,

nachdem mir schon sehr geholfen wurde (http://www.administrator.de/frage/benutzer-massenimport-per-csvde-20529 ...)

habe ich noch 3 (kleine) abschließende Fragen:

1) Lässt sich eine Protokolldatei erstellen wenn man den Import von CSVDE über die Powershell erledigt? Wenn man es nicht mit der PS macht geht es ja, finde aber keine Info wenn man es mit der PS macht...

2) Gibt es eine Möglichkeit, Fehler zu "ignorieren"? Falls nein, folgendes Szenario: Bei Benutzer 100 ist ein Fehler in der CSV Datei, hat er die ersten 99 User erstellt oder erstellt das System die User erst, wenn alles okay ist?!

3) Kann man in der Excel-Datei (noch keine CSV) zur Übersicht mit leeren Zeilen Arbeiten? Ich möchte wenigstens ein bisschen Übersicht gewährleisten können. Ich würde dann so vorgehen:

Spalte 1 - 5 : User Test1 - Test5 in Ou Test1

Spalte 7 - 20 : User Test6 - Test18 in Ou Test2

Danach CSV erstellen usw...

Hoffe ihr wisst was ich meine...

Dankeschön!
Norman
Mitglied: colinardo
22.04.2013, aktualisiert um 11:15 Uhr
Hi Norman,
ich gehe mal bei deiner Beschreibung davon aus das du in der Powershell nicht die CSVDE.exe benutzen willst.

Zu Frage 1 und 2)
Du hast bei jedem Powershell CMDLet zwei Optionen die dir bei der Fehlerbearbeitung helfen. Zum einen ist das -ErrorVariable [Variable] oder abgekürzt -EV [Variable]. Diese Variable wird bei Fehlern gefüllt. Zum anderen gibt es die Option -ErrorAction [Aktion] oder -EA [Aktion] mit der du festlegen kannst was im Fehlerfall passieren soll; in deinem Fall ist das -EA Continue (also bei einem Fehler zum nächsten User springen)
Hier ein möglicher Ansatz:
01.
$userData = Import-Csv -Path "Deine.csv" -Delimiter "," 
02.
$counter = 1 
03.
$FehlerLog = "" 
04.
foreach ($objUser in $userData){ 
05.
    if ($objUser.displayName -ne $null){ 
06.
	new-aduser -EA Continue -EV err -Name $objUser.displayName -SamAccountName $objUser.sAMAccountName -Path $objUser.DN -GivenName $objUser.givenName -DisplayName $objUser.displayName -Type $objUser.objectClass -Description $objUser.description -UserPrincipalName $objUser.userPrincipalName -Homepage $objUser.wWWHomePage -HomePhone $objUser.telephoneNumber -MobilePhone $objUser.mobile -StreetAddress $objUser.streetAddress -City $objUser.l -PostalCode $objUser.postalCode -Department $objUser.department -Company $objUser.company -ScriptPath $objUser.scriptpath -Title $objUser.Position -OtherAttributes @{userAccountControl=$objUser.userAccountControl} 
07.
	if ($err.count -gt 0 ){ $Fehlerlog += "Fehler beim Anlegen von User No. $counter `n"} 
08.
	$err = $null 
09.
	$counter +=1 
10.
11.
12.
if ($Fehlerlog -ne ""){echo "Folgende Fehler sind während des Vorganges aufgetreten:" $Fehlerlog}
zu Frage 3)
Das kannst du machen, jedoch verbleiben dann beim Export für jede Leerzeile auch eine Leerzeile in der CSV-Datei. Diese löschst du entweder in einem Texteditor oder du baust dir in Excel per VBA eine Funktion ein die dir die Daten manuell ohne vorhandene Leerzeilen in eine CSV-Datei exportiert.
Du kannst die Leerzeilen auch in der CSV drin lassen da in obigem Code(Zeile 5) diese bereits ausgefiltert werden...

Grüße Uwe
Bitte warten ..
Mitglied: Belloci
22.04.2013 um 11:18 Uhr
Hi Uwe,

mein Gott machst du dir eine Mühe, so "kompliziert" denke ich gar nicht

Ich habe mich wohl etwas unverständlich ausgedrückt. Ich möchte es MIT CSVDE machen.

Mein Befehl zum (hoffentlich) Glück:

Import-CSV C:\Massenimport.csv | New-ADUser -AccountPassword (ConvertTo-SecureString –AsPlainText “Pa$$w0rd!” -Force) -Enabled:$true -ChangePasswordAtLogon:$true (Yusuf's Blog).

Funktioniert super. Kann ich dann einfach am Ende noch "-EA Continue" anfügen?!

Danke und Gruß
Norman
Bitte warten ..
Mitglied: colinardo
22.04.2013, aktualisiert um 11:27 Uhr
Zitat von Belloci:
mein Gott machst du dir eine Mühe, so "kompliziert" denke ich gar nicht

Ich habe mich wohl etwas unverständlich ausgedrückt. Ich möchte es MIT CSVDE machen.
kein Problem mache gerade verstärkt Dinge mit der Powershell als Übung.

das was du hier aber machst ist nicht CSVDE.exe sondern manuell über die Powershell.
Das hier ist CSVDE => http://technet.microsoft.com/de-de/library/cc771621%28v=ws.10%29.aspx

Import-CSV C:\Massenimport.csv | New-ADUser -AccountPassword (ConvertTo-SecureString –AsPlainText “Pa$$w0rd!”
-Force) -Enabled:$true -ChangePasswordAtLogon:$true (Yusuf's Blog).
Funktioniert super. Kann ich dann einfach am Ende noch "-EA Continue" anfügen?!
Ja, dann überspringt er den jeweiligen User bei Fehlern und macht beim nächsten weiter.

Viel Erfolg
Bitte warten ..
Mitglied: Belloci
22.04.2013 um 20:50 Uhr
Herrlich. Vielen lieben dank und schönen abend.

Gruss norman
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
PowerShell-Script zum Prüfen ob Datei(en) existieren (2)

Frage von Bonsai0815 zum Thema Batch & Shell ...

Batch & Shell
gelöst Powershell net 3.5 Installation silent (2)

Frage von Marabunta zum Thema Batch & Shell ...

Batch & Shell
gelöst PowerShell Skript für doppelte Dateinamen (1)

Frage von janelsaesser zum Thema Batch & Shell ...

Windows Server
gelöst Powershell Skript als geplanter Task (9)

Frage von Ex0r2k16 zum Thema Windows Server ...

Neue Wissensbeiträge
Tipps & Tricks

Wie Hackt man sich am besten in ein Computernetzwerk ein

(29)

Erfahrungsbericht von Herbrich19 zum Thema Tipps & Tricks ...

Humor (lol)

Bester Vorschlag eines Supporttechnikers ever: APC

(15)

Erfahrungsbericht von DerWoWusste zum Thema Humor (lol) ...

Windows Server

Exchange 2010 Active Directory und Windows Server 2016

(4)

Erfahrungsbericht von Herbrich19 zum Thema Windows Server ...

Heiß diskutierte Inhalte
Internet
gelöst Mitarbeiter surft auf unerwünschter Seite - Wie damit umgehen? (41)

Frage von sabines zum Thema Internet ...

Netzwerke
Wie erstelle ich ein Intranet (19)

Frage von Leonardnet zum Thema Netzwerke ...

Netzwerke
VPN-Server einrichten PPTPD-Einrichtung gescheitert (15)

Frage von MIlexx zum Thema Netzwerke ...

LAN, WAN, Wireless
gelöst Eintägige Netzwerkunterbrechung trotz Backupleitung (15)

Frage von iAmbricksta zum Thema LAN, WAN, Wireless ...