【发布时间】:2022-08-16 01:40:22
【问题描述】:
在单模块场景中:运行 Set-Var 返回 10。
# m.psm1
function Set-Var {
$MyVar = 10
Get-Var
}
function Get-Var {
$MyVar
}
在嵌套模块场景中:运行 Set-Var 不返回任何值。
# m1.psm1
function Get-Var {
$MyVar
}
# m.psm1
Import-Module .\\m1.psm1
function Set-Var {
$MyVar = 10
Get-Var
}
如何实现与嵌套模块的单个模块相同的效果?使用$script:MyVar 也不起作用。但是,我想保持变量 local 的范围以启用具有不同值的并发执行。
-
我想你应该使用函数的参数,否则 $MyVar 只是每个函数内部的一个局部变量($null)
标签: powershell