3

现在我有一组.ps1相互关联的 PowerShell 脚本 cmdlet(它们可以接受参数),但每个都相当复杂。我想将它们组织成一个模块,最好将它们保存在单独的文件中。

最好的方法是什么?我可以将它们保存在单独的 .ps1 文件中,并使用模块清单来说明它们是模块的一部分吗?我是否需要将文件点源到.psm1文件中以保持文件分离?还是将它们分成单独的文件是不明智的?

4

1 回答 1

3

最终,您将需要至少一个 .PSM1 文件,其中包含要从模块中导出的变量和函数定义,或者 .PS1 文件中的这些定义中的点源。默认情况下,在导出所有函数时不会导出变量。如果要修改该行为,Export-ModuleMember -Variable MyExportedVariable -Function *-*请在 PSM1 文件的末尾使用。

如果您的 PS1 文件中的大部分代码是内部实现细节,则保留在 PS1 文件中应该没问题。请记住,PSM1 将导出模块的“公共”界面。

于 2013-01-10T23:56:40.937 回答