Function 在foreach循环中运行多个函数

Function 在foreach循环中运行多个函数,function,powershell,loops,Function,Powershell,Loops,我有一个大型Powershell脚本,用于检查VM上的多个变量。该脚本由大约80个不同的函数组成,分别命名为question1、question2、question3 起初,所有函数都不需要参数,所以这段代码工作正常 $number_of_questions = 1..75 foreach($num in $number_of_questions){ Invoke-Expression question$num } 它迭代了所有问题 但现在我需要在运行函数时添加参数。这

我有一个大型Powershell脚本,用于检查VM上的多个变量。该脚本由大约80个不同的函数组成,分别命名为question1、question2、question3

起初,所有函数都不需要参数,所以这段代码工作正常

$number_of_questions = 1..75
foreach($num in $number_of_questions){
        Invoke-Expression question$num
    }
它迭代了所有问题

但现在我需要在运行函数时添加参数。这是行不通的。我找不到一种方法让它与争论一起工作

这是我尝试做的一个测试版本

function test1($text){
    Write-host "Not argument"
    Write-host $text
}

function test2($text){
    Write-host "Not argument"
    Write-host $text

}

function test3($text){
    Write-host "Not argument"
    Write-host $text

}

function test4($text){
    Write-host "Not argument"
    Write-host $text

}

function test5($text){
    Write-host "Not argument"
    Write-host $text

}

$num = 1..5

foreach($number in $num){
    Invoke-Expression test$number -text "Argument"
}
是否有人有一个解决方案,可以使用使用参数的顺序名称运行多个函数。

只需替换:

Invoke-Expression test$number -text "Argument"
与:

要使其正常工作,只需更换:

Invoke-Expression test$number -text "Argument"
与:

让它工作