PowerShell Domain Join
Hallo zusammen,
kann mir einer sagen wo der Fehler in meinem Code ist? Wenn ich ihn öffne passiert nichts.
Gruss
Patrick
kann mir einer sagen wo der Fehler in meinem Code ist? Wenn ich ihn öffne passiert nichts.
$error.clear()
Try {
# Es wird probiert mit dem eingegebenen Passwort einen Domainjoin zu machen
$Join = {
# Es wird das Passwort zum Domainjoin abgefragt
$password = Read-Host -AsSecureString -Prompt "Geben Sie das Adminpasswort ein: "
# Userinformationen
$credential = New-Object System.Management.Automation.PSCredential("Administrator",$password)
# Probiert der Domain zu joinen
Add-Computer -DomainName "local.local" -Credential $credential
}
}
catch {
Write-Host "Fehler beim Domainjoin"
.$Join
}
if (!$error) {
# Der Name des Computers wird gesetzt und kann bei falscher Eingabe erneut eingegeben werden
$Hostname = {
# Variable name wird gesetzt und Abfrage für den Gerätenamen erstellt.
$name=Read-Host -Prompt "Geben Sie den gewünschten Gerätenamen ein"
# Zeile mit dem eingegebenen Gerätenamen wird ausgegeben.
Write-Host "Computername: "$name
# Variable weiter und Abfrage ob der Name stimmt.
$weiter=Read-Host -Prompt "Stimmt der Gerätename so? y/n"
# Falls Y oder y
If(($weiter-eq"Y")-or($weiter-eq"y"))
{
# Der Gerätename wird geändert und der Computer neugestartet
Rename-Computer -NewName $name -DomainCredential $credential
Restart-Computer
}
# Falls N oder n
elseif(($weiter-eq"N")-or($weiter-eq"n"))
{
# Springt zum Anfang zurück und der Gerätename kann neu eingegeben werden.
.$Hostname
}
# Egal bei welcher Eingabe (ausser Y,y,N,n)
else
{
# Gibt aus, dass ein Fehler bei der Eingabe gemacht worden ist.
Write-Host "Fehler bei der Eingabe!"
# Springt zum Anfang zurück und der Gerätename kann neu eingegeben werden.
.$Hostname
}
}
}
Gruss
Patrick
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 322732
Url: https://administrator.de/contentid/322732
Ausgedruckt am: 15.11.2024 um 19:11 Uhr
2 Kommentare
Neuester Kommentar
Wenn ich ihn öffne passiert nichts.
Kein Wunder wenn du die Befehle in Sub-Expressions mit $Join = { ... } packst. Wenn du das machst musst du diese Subexpressions die du in Variablen speicherst wie z.B. hier:$Join = {
# Es wird das Passwort zum Domainjoin abgefragt
# ......
}
Genau das hast du in Zeile 13 versäumt. (Kaffee und so )
Gruß