我正在编写一个 PowerShell 脚本,它为用户提供了多个可供选择的选项。选择一个选项后,将执行一个功能,然后用户将返回到原始菜单。
在下面的代码中,为用户提供了选项,并执行了功能,但完成后,脚本就结束了。相反,我想要的是在函数结束时返回到原始用户菜单。有人可以告诉我该怎么做吗?谢谢!
function firstFunction {
Write-Host "You chose option 1"
return
}
Write-Host "Welcome"
[int]$userMenuChoice = 0
while ( $userMenuChoice -lt 1 -or $userMenuChoice -gt 4){
Write-Host "1. Menu Option 1"
Write-Host "2. Menu Option 2"
Write-Host "3. Menu Option 3"
Write-Host "4. Quit and Exit"
[int]$userMenuChoice = Read-Host "Please choose an option"}
switch ($userMenuChoice) {
1{firstFunction}
2{Write-Host "You chose option 2"}
3{Write-Host "You chose option 3"}
default {Write-Host "Nothing selected"}
}
最佳答案
将菜单代码放入一个不会终止的外部循环中,除非 $userMenuChoice
为 4:
do {
[int]$userMenuChoice = 0
while ( $userMenuChoice -lt 1 -or $userMenuChoice -gt 4) {
Write-Host "1. Menu Option 1"
Write-Host "2. Menu Option 2"
Write-Host "3. Menu Option 3"
Write-Host "4. Quit and Exit"
[int]$userMenuChoice = Read-Host "Please choose an option"
switch ($userMenuChoice) {
1{firstFunction}
2{Write-Host "You chose option 2"}
3{Write-Host "You chose option 3"}
default {Write-Host "Nothing selected"}
}
}
} while ( $userMenuChoice -ne 4 )
关于powershell - 如何在 PowerShell 中的函数结束时返回用户菜单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16625086/