如何从脚本块(作业)中检索变量值



我正在尝试获取在脚本块中修改的变量的值:

function Test-Function {
$var = "apple"
Start-Job -ScriptBlock {
$var = "banana"
}
Write-Host "Variable is $var"
}
Test-Function
Variable is: apple

我正在尝试获取输出"香蕉"。这可能吗?

由于您在代码中使用 PS 作业,因此您需要使用wait-job等待作业完成,最后您必须使用receive-job接收作业。将您的代码替换为以下内容:

function Test-Function {
$var = "apple"
Start-Job -ScriptBlock {
$var = "banana"
Write-Host "Variable is $var"
} | Wait-Job -Any |Receive-Job
#Write-Host "Variable is $var"
}
Test-Function

希望对您有所帮助。

最新更新