【发布时间】:2021-12-03 21:24:51
【问题描述】:
我一直在编写 Cmdlet,为了保持界面整洁,我一直在手动导出我关心的函数 Export-ModuleMember。
但是,有人指出,我也可以将我的函数直接放在global: scope 中,而不用调用Export-ModuleMember。
哪个更好?
# Option A: Export-ModuleMember
function Do-Something {}
Export-ModuleMember -Function Do-Something
# Option B: global scope
function global:Do-AnotherThing {}
# Something else?
谢谢!
我的直觉是 Export-ModuleMember 更好,因为它让调用者决定函数最终在哪个范围内(例如,另一个 cmdlet 可以导入我的 cmdlet 而不会全局公开这些导出的函数),但我不确定。
【问题讨论】:
标签: powershell cmdlets