icn*_*vad 37 powershell module
我有一个模块xy,它有最终用户的几个函数和几个由函数调用但不是最终用户调用的内部帮助函数.
Get-Command -Module xy -CommandType function
Run Code Online (Sandbox Code Playgroud)
列出我在模块文件夹中的所有功能(例如get-foo和get-foo_helper)
有没有办法隐藏get-foo_helper正在使用的最终用户的功能:
Get-Command -Module tcaps -CommandType function
Run Code Online (Sandbox Code Playgroud)
Mik*_*ard 40
我做的一件事是对我想要导出的函数使用动词 - 名词命名约定,但在辅助函数中省略连字符.
然后,export-modulemember *-*只负责导出您要导出的内容.
Joe*_*oeG 35
只需将Export-ModuleMember添加到模块的底部即可.
假设您的模块中有以下功能:
New-Function0
New-Function1
New-Function2
New-HelperFunction0
Run Code Online (Sandbox Code Playgroud)
将这些行添加到模块文件的底部:
Export-ModuleMember -function New-Function0
Export-ModuleMember -function New-Function1
Export-ModuleMember -function New-Function2
Run Code Online (Sandbox Code Playgroud)
在此模块上运行Import-Module时,它只会导入Export-ModuleMember定义的函数.
现在假设您还想为New-Function1导出别名.只需将其添加到模块的末尾:
Export-ModuleMember -alias nf1
Run Code Online (Sandbox Code Playgroud)
现在,当您使用Import-Module时,它将加载您定义的函数,以及New-Function1的别名(nf1).
| 归档时间: |
|
| 查看次数: |
11489 次 |
| 最近记录: |