功能完成后切换到不同的功能

Switch To A Different Function After Function Finishes

我有一个用于创建和管理 Active Directory 用户的脚本。

一个函数有运行后,我需要它切换回RBFTMenu函数。

有办法吗?

编辑

菜单

function RBFTMenu {
    cls
    Write-Host 'User Creation

1. Create a Single User
2. Create Multiple Users

_________________________________________________

Active Directory ~ User Management

3. Password Reset
4. Disable/Enable A User Account

_________________________________________________

Exchange ~ User Management

5. Give Full Mailbox Access

q. Quit

'

    while (($RBFTSelection = Read-Host -Prompt 'Please Select An Option & Press Enter') -notin 1,2,3,4,5 ,'q') {
        Write-Warning "$RBFTSelection is not a valid option"
    }

    switch ($RBFTSelection) {
        1 { New-UserManualRBFT }
        2 { New-UserFromCSVRBFT }
        3 { PasswordResetRBFT }
        4 { DisableEnableUserRBFT }
        5 { FullAccessRBFT }
    }
}

函数结束示例

Write-Host " "
Write-Host " "
echo "Press Any Key To Close"
$HOST.UI.RawUI.ReadKey("NoEcho,IncludeKeyDown") | Out-Null
$HOST.UI.RawUI.Flushinputbuffer() 
}

假设函数 returns 您可以通过它来决定采取哪个操作,您可以像这样在循环中调用它:

while ($true) {
    $action = RBFTMenu
    switch ($action) {
        ...
    }
}

编辑

由于您在菜单函数中处理操作,因此您只需在循环中调用您的函数:

while ($true) {
    RBFTMenu
}

您应该在 switch 语句中添加一个 exit 分支,但是:

switch ($RBFTSelection) {
    1 { New-UserManualRBFT }
    ...
    'q' { exit }
}