0

我有一些 PowerShell 函数,我想通过 command 将它们导入到我的服务器 2008 R2 中Import-Module。所以我创建了一个 psd1 文件,并在 psm1 中使用:Export-ModuleMember -Function "*-*" -Alias *.

但是,当我执行命令时:

PS C:\Windows\system32> import-module Myloader -DisableNameChecking -Verbose
VERBOSE: Loading module from path 'C:\Tools\Myloader.psd1'.
VERBOSE: Loading module from path 'C:\Tools\Myloader.psm1'.

我希望它应该导入我的函数,但它没有,也没有显示错误。然后我执行Get-Module -ListAvailable,我的功能被列出,但没有关于ExportedCommands

ModuleType Version    Name                                ExportedCommands
---------- -------    ----                                ----------------
Script     3.0        MyLoader
Script     3.0        MyLoader

但是当我在本地机器上运行它时就可以了。以前有人遇到过这个问题吗?

此问题发生在 Windows Server 2008 R2、PowerShell 5.0 上。

4

1 回答 1

0

使用模块清单时,您在 .psd1 文件中进行导出。从 .psm1 文件中删除该Export-ModuleMember语句并确保 .psd1 文件包含以下行:

ModuleToProcess   = 'MyLoader.psm1'
FunctionsToExport = '*-*'
AliasesToExport   = '*'
于 2015-08-13T09:35:59.653 回答