Powershell Full Username abfragen
Hallo,
ich frage per WMI den angemeldeten User ab, funktioniert auch einwandfrei:
Get-WmiObject -Class Win32_ComputerSystem -ComputerName $Computername | fl UserName
Jetzt benötige ich aber den Vor- und Nachnamen von dem User, die Ausgabe gibt mir aber nur domäne\username zurück.
Kann mir jemand helfen?
Danke.
Gruß Multi
ich frage per WMI den angemeldeten User ab, funktioniert auch einwandfrei:
Get-WmiObject -Class Win32_ComputerSystem -ComputerName $Computername | fl UserName
Jetzt benötige ich aber den Vor- und Nachnamen von dem User, die Ausgabe gibt mir aber nur domäne\username zurück.
Kann mir jemand helfen?
Danke.
Gruß Multi
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 204994
Url: https://administrator.de/contentid/204994
Ausgedruckt am: 20.11.2024 um 03:11 Uhr
4 Kommentare
Neuester Kommentar
Hi Multi,
Bei Abfrage auf einem AD-Server geht noch folgendes:
Grüße Uwe
$username = (Get-WmiObject -Class Win32_ComputerSystem -ComputerName $Computername).UserName
$fullname = (get-WmiObject -Class Win32_UserAccount | Where-Object -FilterScript {$_.Caption -eq "$username"}).FullName
$vorname = $fullname.Split(" ")
$nachname = $fullname.Split(" ")[1]
Bei Abfrage auf einem AD-Server geht noch folgendes:
$vorname = (Get-User -Identity DOMAIN\User).FirstName
$nachname = (Get-User -Identity DOMAIN\User).LastName
Hier eine Lösung, hatte zunächst Probleme mit dem Filter in Get-WMIObject (deshalb die zusätzliche Stufe mit dem where-Object), da bei diesem der Backslash escaped werden muss...
Damit sollte es wesentlich schneller gehen weil nicht mehr alle User durchlaufen werden müssen...
Grüße Uwe
$username = (Get-WmiObject -Class Win32_ComputerSystem -ComputerName $Computername).UserName.Replace("\","\\")
$fullname = (get-WmiObject -Class Win32_UserAccount -Filter "Caption = '$username'").FullName
Grüße Uwe