我在CentOS 7服务器上使用PowerShell v6.1.1软件包。
我想隐藏我创建的模块的某些功能,因为最终用户不必使用它。他要使用的功能就是我要隐藏的功能。
用户必须使用function1
,function1
使用function2
,但是用户不必使用function2,因此我不想让他看到function2
。
Export-ModuleMember仅在使用Get-Command -Module myModule
时将其隐藏,但是自动完成并带有选项卡仍会显示所有功能。
答案 0 :(得分:0)
Moerwald的评论为我提供了一种从Get-Command
命令和制表符自动完成功能中隐藏模块功能的正确方法。
Export-ModuleMember 'function1'
仅在使用Get-Command -Module myModule
时显示定义的功能,但自动完成功能将允许用户使用模块中的所有功能。
Function-ToExport= 'function1'
将使定义的功能成为最终用户唯一可用的功能,并且这些功能将能够使用导出模块中的其他功能。