0

我已将模块“ModuleFoo.psm1”导入我的脚本:“ModuleBar.ps1”

我调用了导入模块中的一个方法,该方法对函数 BarFunction.ps1 进行点源:

function Dot-SourceBarFunction()
{
. "\BarFunction.ps1"
}

我可以让这个 BarFunction.ps1 从父范围访问:ModuleBar.ps1?

4

1 回答 1

1

这应该只是工作,例如:

-- Outer.ps1 --
Import-Module $PSScriptRoot\module.psm1
Get-Foo


-- Module.psm1 --
. $PSScriptRoot\inner.ps1


-- Inner.ps1 --
function Get-Foo {
    "$($MyInvocation.MyCommand.Name) called"
}

这输出Get-Foo called. 函数默认为模块中的公共可见性,因此当您对在模块中引入函数的脚本进行点源时,这些脚本会自动公开。

于 2012-12-05T04:58:57.563 回答