0

如果我已将 moduleFoo 导入到我的脚本中,其中有一个函数 Bar()。

我可以以某种方式调用这个函数吗:

moduleFoo.Bar

代替

Bar

以便阅读脚本的人可以理解这个 Bar 是从哪个模块调用的?

4

2 回答 2

1

您可以给您的函数名称,如:

moduleFoo.Bar # prefixing each function in your module with the module name + .

但这不尊重函数或 cmdlet (verb-noum) 的标准 powershell 命名约定。

您还可以创建以函数/cmdlet 为前缀的别名modulefoo.

如果您只需要知道函数/cmdlet 所属的模块的名称,您可以使用:

(gcm bar).Modulename
于 2012-12-06T08:42:52.563 回答
1

如果您使用 -AsCustomObject 开关导入模块,则可以将其称为 $moduleFoo.Bar :

$moduleFoo = Import-Module moduleFoo -AsCustomObject
$moduleFoo.Bar

另一种选择是使用命令全名 (module\command) 来调用它:

PS> moduleFoo\Bar 
于 2012-12-06T12:08:06.337 回答