gpt4 book ai didi

powershell - 根据用户输入加载脚本

转载 作者:行者123 更新时间:2023-12-02 23:57:44 24 4
gpt4 key购买 nike

您好,我在整个脚本制作 Realm 还算陌生,希望有人能帮助我。我创建了一个菜单,该菜单根据用户输入将提示回答,但是我需要这样做,因此如果您按“1”,它将在该脚本中加载另一个脚本,依此类推。
我当前的代码是这样的:

function Show-Menu
{
param (
[string]$Title = 'Menu'
)
cls
Write-Host " $Title "

Write-Host "1: Tast '1' for at oprette OU"
Write-Host "2: Tast '2' For at oprette grupper"
Write-Host "3: Tast '3' For at importere brugere i grupper"
Write-Host "4: Tast '4' For at eksportere brugerlister til CSV"
Write-Host "5: Tast '5' For at slette brugere"
Write-Host "6: Tast '6' For at ændre password"
Write-Host "Q: Tast 'X' For at afslutte."
}
do
{
Show-Menu
$input = Read-Host "Please make a selection"
switch ($input)
{
'1' {
cls
'Du valgte Nummer #1'
} '2' {
cls
'Du valgte Nummer #2'
} '3' {
cls
'Du valgte Nummer #3'
} '4' {
cls
'Du valgte Nummer #4'
} '5' {
cls
'Du valgte Nummer #5'
} '6' {
cls
'Du valgte Nummer #6'

} 'q' {
cls
'Afslutter nu'
return
}
}
pause
}
until ($input -eq 'q')

感谢有关如何将脚本加载到此脚本的任何提示
  • 菲利普
  • 最佳答案

    首先,不要将input用作变量名-$inputautomatic variable,通过尝试覆盖它,您可能最终会看到一些奇怪的意外行为。

    对于“加载”脚本,请使用dot sourcing method,如下所示:

    . C:\path\to\script.ps1

    上面的代码将在调用范围内执行script.ps1,因此脚本中的所有变量和函数定义都可以使用后缀:
    do
    {
    Show-Menu
    $choice = Read-Host "Please make a selection"
    switch ($choice)
    {
    '1' {
    cls
    'Du valgte Nummer #1'
    . C:\path\to\script1.ps1
    }
    '2' {
    cls
    'Du valgte Nummer #2'
    . C:\path\to\script2.ps1
    }
    '3' {
    cls
    'Du valgte Nummer #3'
    . C:\path\to\script3.ps1
    }
    # og så videre ...
    }
    'q' {
    cls
    'Afslutter nu'
    return
    }
    }
    pause
    }
    until ($choice -eq 'q')

    最后,您可能只想在输出中只使用丹麦语或英语,但这对我来说更像是一头小怒:-)

    关于powershell - 根据用户输入加载脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39204159/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com