PowerShell中使用Out-GridView时如何固定函数执行顺序?
解决方法
要让选中的函数按你指定的固定顺序执行(而非选中顺序),可以先定义好目标执行顺序,再遍历该顺序列表,仅执行被选中的函数。
修改后的代码如下:
function function1 { Write-Host "Number 1" } function function2 { Write-Host "Number 2" } function function3 { Write-Host "Number 3" } function function4 { Write-Host "Number 4" } $functions = "function1", "function2", "function3", "function4" # 定义你需要的执行顺序,可根据需求调整排列 $desiredOrder = "function1", "function2", "function3", "function4" $chooses = $functions | Out-GridView -PassThru # 按预设顺序遍历,仅执行选中的函数 foreach ($func in $desiredOrder) { if ($chooses -contains $func) { & $func } }
关键说明
$desiredOrder是核心配置项,你可以直接修改数组内的函数名称排列,来指定最终的执行顺序。比如想优先执行function1再执行function4,就改成"function1", "function4", "function2", "function3"- 遍历过程会严格遵循预设顺序,仅对用户选中的函数执行调用,完全忽略用户在Out-GridView中的选中顺序
内容的提问来源于stack exchange,提问作者Bandit
相关产品推荐
相关产品推荐

