1991infi
Goto Top

PowerShell Skript Activ-Directory. User aus Liste implementieren

Hallo Leute ich habe eine Frage bezüglich PowerShell, leider kenne ich mich da gar nicht aus, nur im cmd ein bischen.
Ich muss ein Skript schreiben welches benutzer aus einer Liste zum AD hinzufügt, jedoch vorher noch abklärt ob der User bereits existiert

Zuerst sollte eine Einleitung stehen in etwa der Art
@echo off
echo.
echo Liste sollte in diesem Style aufgebaut werden.
echo.
echo.
echo Vorname	Nachname	username
echo Hans	Muste	hans.muster
echo.
echo.
Anschliessen
set /P Liste=Pfad der Liste mit den Mitarbeiter angeben:
set /P skip=Ab welcher Zeile sollen die Mitarbeiter ausgelesen werden?
Dann sollte die user zum AD hinzugefügt werden
For /F "skip=%skip% delims=; tokens=1,2, 3" %%i IN (%Liste%) DO NET USER %%i passwort /ADD /PASSWORDREG:yes /HOMEDIR:\\serverqc\Home$\%%1 /PROFILEPATH:\\serverqc\Profile$\%%1 /SCRIPTPATH:sekretariat.bat /FULLNAME:"%%k %%j"  
Falls jetzt der User jedoch bereits existiert, sollte eine MsgBox erscheinen dass User schon existiert und fragen ob man den User trotzdem hinzufügen möchte.
Falls ja: erschient eine Inputbox mit der abfrage wie der username benannt weirden soll.

Anschliessend wird noch das Homedir eingerichtet
For /F "skip=%skip% delims=; tokens=1" %%i IN (%Liste%) DO MD \\serverqc\Home$\%%i /y  
und dann eine Log file erstellen welche user erstellt worden sind

Vielen Dank für jede Antwort, und eure Hilfe
Simon, 1991infi

Content-Key: 127608

Url: https://administrator.de/contentid/127608

Printed on: April 24, 2024 at 11:04 o'clock

Member: 2hard4you
2hard4you Oct 21, 2009 at 17:29:50 (UTC)
Goto Top
Moin,

schau Dir bitte einmal dsadd user /? an - der klopft Dir die User rein - und falls er schon existiert, kannste die Ausgabe in ne Datei umleiten

Gruß

24
Member: 1991infi
1991infi Oct 22, 2009 at 09:15:47 (UTC)
Goto Top
Vielen Dank für die schnelle Antwort, funktioniert der befehl au auch im PowerShell?
gruss
Simon, 1991infi
Member: 1991infi
1991infi Oct 22, 2009 at 11:31:17 (UTC)
Goto Top
@echo off
echo.
echo Liste sollte in diesem Style aufgebaut werden.
echo.
echo.
echo Username	Vorname	name	Gruppe	Telefonnummer
echo h.muster	hans	Muster	g1;g2	0111111111			
echo.

set /P Liste=Pfad der Liste mit den Mitarbeiter angeben:
cls
set /P skip=Ab welcher Zeile sollen die Mitarbeiter ausgelesen werden?
cls



For /F "skip=%skip% delims=; tokens=1,2,3,4,5" %%i IN (%Liste%) DO dsadd user %%i -samid %%i -fn %%j -ln %%k -display "%%j %%k" -pwd Password1 -memberof Gruppe;%%l -tel %%m -email %%j.%%k@test.ch -hmdir \\serverqc\Home$\%%i -hmdrv H: -profile \\serverqc\Profile$\%%i -loscr logon.bat -mustchpwd yes -canchpwd yes -pwdneverexpires yes -disabled no >> AD_user.log  
For /F "skip=%skip% delims=; tokens=1" %%i IN (%Liste%) DO MD \\serverqc\Home$\%%i /y  

Ich habe mir was in dieser Art vorgestellt, kann es jedoch nicht teste, kann mir jemand sagen ob das Funktionstüchtig ist?
Danke
Simon