fr4g3r 10 Geschrieben 21. April 2012 Melden Teilen Geschrieben 21. April 2012 Hallo zusammen, ich suche eine Möglichkeit mir den Remotedesktop-Benutzerprofilpfad aller Benutzer in einem ADS in eine csv-Datei ausgeben zu lassen. dim objUser set objUser = getobject("LDAP://CN=Nachname\, Vorname,OU=USERS,OU=UnterOU,DC=sub,DC=domain,DC=net") WScript.echo objUser.TerminalServicesProfilePath Mit diesem Script kann ich mir den Pfad für ein fest hinterlegtes Profil anzeigen lassen. Nun hätte ich es gerne so, dass das nicht nur mit einem hinterlegten Benutzer klappt, sondern das er mir alle in der Sub-Domain vorhandenen Benutzernamen inkl. dem jeweiligen Pfad in eine CSV ausgibt. Ich kenne mich mit VBS leider nicht so gut aus und bekomme es alleine nicht hin. Wäre klasse wenn mir jemand helfen kann. Gruß Fr4g3r Zitieren Link zu diesem Kommentar
PowerShellAdmin 169 Geschrieben 21. April 2012 Melden Teilen Geschrieben 21. April 2012 Hi, vielleicht ist ja PowerShell was für dich? Dafür benötigst du nur ein Windows Member Rechner mit PowerShell und den Microsoft RSAT Modul - Installation siehe hier http://www.msxfaq.de/code/rsat_adpowershell.htm Unter Domäne musst du die Subdomäne eintragen, des Weiteren musst du noch ein Array in der Schleife beladen und dieses als CSV exportieren. Habe das Ganze jetzt nur freihand angepasst, kann also nen Fehler versteckt sein, muss außerdem angepasst werden. Der Skript gibt auch erstmal nur ein Attribut aus und exportiert noch nicht. viele Grüße Admin #Import AD-Extensiosn import-module activedirectory #Mitarbeiter OU/CN $userpath="cn=users" #Pfad zum Benutzer (cn=users oder ou=Mitarbeiter - Abhängig ob Benutzer im Container oder OU #Objekt beinhaltet alle AD Windows Gruppen #Setzt den Filter auf eine Subdomäne $domain= dc=sub,dc=domain,dc=tld $users=Get-aduser -Filter {ObjectClass -eq "user"} -Searchbase "$domain" -properties * foreach($object in $users) { #Ausgabe Profilpath $profilpath=$object.TerminalServicesProfilePath # #Hier kannst du jetzt ein Arraybeladen usw } Zitieren Link zu diesem Kommentar
fr4g3r 10 Geschrieben 22. April 2012 Autor Melden Teilen Geschrieben 22. April 2012 (bearbeitet) Hallo, danke für deine Antwort. Habs nun aber doch noch mit VBS hinbekommen. Dim oOU, oOutPutFile, oFileSYS Set oFileSYS = WScript.CreateObject("Scripting.FileSystemObject") Set oOutPutFile = oFileSYS.CreateTextFile("d:\Useroutput.csv",True) ' set LDAP path to the OU that you will list Set oOU = GetObject("LDAP://OU=USERS,OU=OUName,DC=sub,DC=domain,DC=net") ' call the Sub ListUsers with the LDAP Path that you have set above. oOutPutFile.WriteLine "Nachname,Vorname,ProfilePath,ScriptPath,HomeDrive,HomeDirectory,TerminalServicesProfilePath,TerminalServicesHomeDrive,TerminalServicesHomeDirectory" ListUsers oOU oOutPutFile.Close Set oFileSYS = Nothing Set oOU = Nothing WScript.Quit(0) ' SUB to list the users with the parameter oCount. oCount contain the LDAP Path (GetObject("LDAP://OU=...) Sub ListUsers(oCount) Dim oUSR For Each oUSR In oCount Select Case LCase(oUSR.Class) Case "user" oOutPutFile.WriteLine oUSR.Get ("name") & (",") & oUSR.ProfilePath & (",") & oUSR.ScriptPath & (",") & oUSR.HomeDrive & (",") & oUSR.HomeDirectory & (",") & oUSR.TerminalServicesProfilePath & (",") & oUSR.TerminalServicesHomeDrive & (",") & oUSR.TerminalServicesHomeDirectory End Select Next End Sub Gruß bearbeitet 22. April 2012 von fr4g3r Zitieren Link zu diesem Kommentar
blub 115 Geschrieben 22. April 2012 Melden Teilen Geschrieben 22. April 2012 Hi, Unte Windows7 musst du vorher noch die tsuserex.dll registrieren, sonst bekommst du die TS-Eigenschaften nicht. regsvr32.exe tsuserex.dll blub Zitieren Link zu diesem Kommentar
Empfohlene Beiträge
Schreibe einen Kommentar
Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.