PowerShell - Get-ADUser - Informationen auslesen und kopieren
Schönen guten Tag liebe Administrator-Community,
um das Offboarding ein wenig zu erleichertn schreibe ich derzeit ein PS-Script, das einige Benutzerinformationen ausließt und kopiert.
Im späteren Verlauf sollen ebenfalls die ausgelesenen Daten beim Benutzer gelöscht werden und die Informationen sollen unter Telephones --> Notes eingefügt werden.
Dabei habe ich folgendes Problem:
Wenn bei einem Benutzer der Manager nicht hinterlegt ist erhalte ich eine Fehlermeldung.
Ich habe probeweise versucht eine IF-Abfrage ausführen, ob der Benutzer überhaupt einen Manager hat. Bislang leider ohne Erfolg :/
Vielleicht kann mir hier jemand einen Lösungsansatz nennen, damit keine Fehlermeldung auftritt, wenn kein Manager beim Benutzer hinterlegt ist...?
Hier das Script bis jetzt:
um das Offboarding ein wenig zu erleichertn schreibe ich derzeit ein PS-Script, das einige Benutzerinformationen ausließt und kopiert.
Im späteren Verlauf sollen ebenfalls die ausgelesenen Daten beim Benutzer gelöscht werden und die Informationen sollen unter Telephones --> Notes eingefügt werden.
Dabei habe ich folgendes Problem:
Wenn bei einem Benutzer der Manager nicht hinterlegt ist erhalte ich eine Fehlermeldung.
Ich habe probeweise versucht eine IF-Abfrage ausführen, ob der Benutzer überhaupt einen Manager hat. Bislang leider ohne Erfolg :/
Vielleicht kann mir hier jemand einen Lösungsansatz nennen, damit keine Fehlermeldung auftritt, wenn kein Manager beim Benutzer hinterlegt ist...?
Hier das Script bis jetzt:
do{$inputusername = Read-Host -Prompt "Bitte geben Sie den pre Win2000 Benutzernamen ein!" #Eingabe des Usernames
#Abfrage, ob der Bentuzer, der eingegeben wurde, exisitert. Wenn nicht wird das Script von vorne gestartet.
if (@(Get-ADUser -Filter { SamAccountName -eq $inputusername }).Count -eq 0) {
Write-Warning -Message "Benutzer $inputusername existiert nicht. Geben Sie bitte einen Benutzer an, der existiert."
}
else {
Write-Host "Informationen des Benutzers '$inputusername' werden abgerufen"
###ABFRAGE der Benutzerinformationen###
$userresult = Get-ADUser -Identity $inputusername -Properties Telephonenumber,Mobilephone, EmailAddress, Pager, Initials, Manager | ForEach-Object {
"###User-Informationen###`r`n"+
" Telefonnummer: "+$_.Telephonenumber+"`r`n"
"Mobilnummer: "+$_.Mobilephone+"`r`n"
"Pager: "+$_.Pager+"`r`n"
"Initialen: "+$_.Initials+"`r`n"
"Manager: "+((Get-ADUser (Get-ADUser $inputusername -Properties manager).manager -properties displayname).displayname)
}
#Gruppen Mitgliedschaften
$groupresult = (Get-ADPrincipalGroupMembership $inputusername).Name -join ";`r`n"
#Zusammenfügen der Informationen als $result
$result = "$userresult`r`n`r`n###AD-Gruppen###`r`n$groupresult"
#Ausgeben in der PS (optional, fenster wird sowieso sofort geschlossen...!)
Write-Host "$userresult`r`n`r`n###AD-Gruppen###`r`n$groupresult"
###KOPIEREN###
#Kopieren in die Zwischenablage
Set-Clipboard $result
Write-Host "Informationen wurden erfolgreich abgerufen und kopiert"
}}
while (@(Get-ADUser -Filter { SamAccountName -eq $inputusername}).Count -eq 0)
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 614327
Url: https://administrator.de/contentid/614327
Ausgedruckt am: 21.11.2024 um 13:11 Uhr
3 Kommentare
Neuester Kommentar