PS - Auswahl Menu mit Abläufen
Hallo liebe Mitstreiter,
ich bastele gerade an ein paar Powershell Skirpten um mir die Shell näher zu bringen und auch ggf. mal eine Testumgebung schneller aufbauen zu können.
Unten stehend findet ihr zwei Skripte von mir, welche ich auch ohne Fehler ausführen kann.
Lediglich folgende Ausgabe bekomme ich in VSCode im PowerShell Terminal:
Wie folgt habe ich versucht die Skripte auszuführen:
- Set-ExecutionPolicy bypass
- Aufruf über die Powershell.exe
- Aufruf über Powershell7.exe
- Code direkt in VSCode ausführen
- Code direkt in der ISE ausführen
Leider alles erfolglos.
Wenn denn wenigstens eine Fehlermeldung erscheinen würde....
Menu-Role-Installation.ps1
Menu-ComputerRename-DomJoin.ps1
Vielen Dank für eure Unterstützung.
ich bastele gerade an ein paar Powershell Skirpten um mir die Shell näher zu bringen und auch ggf. mal eine Testumgebung schneller aufbauen zu können.
Unten stehend findet ihr zwei Skripte von mir, welche ich auch ohne Fehler ausführen kann.
Lediglich folgende Ausgabe bekomme ich in VSCode im PowerShell Terminal:
PS D:\Entwicklung\Git\Powershell\Menu\> . "D:\Entwicklung\Git\Powershell\Menu\Menu-Role-Installation.ps1"
PS D:\Entwicklung\Git\Powershell\Menu\> . "D:\Entwicklung\Git\Powershell\Menu\Menu-ComputerRename-DomJoin.ps1"
Wie folgt habe ich versucht die Skripte auszuführen:
- Set-ExecutionPolicy bypass
- Aufruf über die Powershell.exe
- Aufruf über Powershell7.exe
- Code direkt in VSCode ausführen
- Code direkt in der ISE ausführen
Leider alles erfolglos.
Wenn denn wenigstens eine Fehlermeldung erscheinen würde....
Menu-Role-Installation.ps1
function DisplayMenu {
Clear-Host
Write-Host @"
+===============================================+
| POWERSHELL CONSOLE - Install Server Roles |
+===============================================+
| |
| 1) WDS Server Installation |
| 2) WSUS Server Installation |
| 3) Active Directory Installation |
+===============================================+
"@
$MENU = Read-Host "OPTION"
Switch ($MENU)
{
1 {
#Option One - WDS Server
$WDSServerName = Read-Host "HOST"
$WDSServerRemInst = Read-Host "Enter the RemInstall Path; D:\RemoteInstall"
Install-WindowsFeature -Name WDS -IncludeManagementTools
WDSUTIL /Verbose /Progress /Initialize-Server /Server:$WDSServerName /RemInst:"$WDSServerRemInst"
WDSUTIL /Set-Server /AnswerClients:All
Start-Sleep -Seconds 15
DisplayMenu
}
2 {
#Option Two - WSUS Server
$WSUSDIR = Read-Host "Enter the WSUS Directory; D:\WSUS"
Install-WindowsFeature -Name UpdateServices, UpdateServices-WidDB, UpdateServices-Services, UpdateServices-RSAT, UpdateServices-API, UpdateServices-UI
cmd /c "C:\Program Files\Update Services\Tools\wsusutil.exe" postinstall CONTENT_DIR=$WSUSDIR
Start-Sleep -Seconds 15
DisplayMenu
}
3 {
#Option Three - Active Directory
$DomainName = Read-Host "Enter the AD Domain Name ; lab.company.com"
$NetBIOSName = Read-Host "Enter the NetBIOS Name ; LAB"
Install-WindowsFeature -Name AD-Domain-Services -IncludeManagementTools
Start-Sleep -Seconds 15
Install-ADDSForest -DomainName $DomainName -DomainNetBIOSName $NetBIOSName -InstallDNS -SafeModeAdministratorPassword (Read-Host -Prompt "Enter DSRM Password:" -AsSecureString)
DisplayMenu
}
}
}
Menu-ComputerRename-DomJoin.ps1
function DisplayMenu {
Clear-Host
Write-Host @"
+===============================================+
| POWERSHELL CONSOLE - Manage Computer / Domain|
+===============================================+
| 1) Rename Computer and Join Domain |
| 2) Rename Computer |
| 3) Join Domain |
+===============================================+
"@
$MENU = Read-Host "Bitte Option eintragen!"
Switch ($MENU)
{
1 {
#Option One - Rename and Domain Join
$DomainName = Read-Host "Please enter the Domain Name ; ad.company.com"
$ComputerHostName = $env:computername
$NewComputername = Read-Host "Please enter the new Computername"
Add-Computer -DomainName $DomainName -ComputerName $ComputerHostName -newname $NewComputername
Write-Host "Your Computer $NewComputerName joint the Domain $DomainName"
DisplayMenu
}
2 {
#Option Two - Rename Computer
$ComputerHostName = $env:computername
$NewComputername = Read-Host "Please enter the new Computername"
Write-Host "Your current Computername is $ComputerName"
Rename-Computer $NewComputerName
Start-Sleep -Seconds 15
DisplayMenu
}
3 {
#Option Three - Domain Join
$DomainName = Read-Host "Please enter the Domain Name ; ad.company.com"
$ComputerHostName = $env:computername
Add-Computer -DomainName $DomainName -ComputerName $ComputerHostName
Write-Host "Your Computer $ComputerHostName joint the Domain $DomainName"
DisplayMenu
}
}
}
Vielen Dank für eure Unterstützung.
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 3371446937
Url: https://administrator.de/contentid/3371446937
Ausgedruckt am: 22.11.2024 um 02:11 Uhr
3 Kommentare
Neuester Kommentar
Du definierst die Funktionen, scheinst sie aber nie aufzurufen.
Zitat von @ITAllrounder:
Wenn denn wenigstens eine Fehlermeldung erscheinen würde....
Die Funktion wird korrekt deklariert, allerdings nirgends ausgerufen.