我在PowerShell中有许多高级函数,它们处理版本号,这是我们配置模块的核心部分。
当用户导入配置模块时,这些功能应该对他们可用。我可以将所有函数复制到配置模块,但如果它像helper模块一样保存,那么组织它将非常好。
最终用户应该只导入主配置模块,但应该包含此辅助模块。有没有办法实现这个目标?
答案 0 :(得分:0)
您可以通过创建另一个PS模块路径并将它们放在那里来使它们都可用作cmdlet - 这将在每个PS会话中提供给所有用户。所有他们必须做的事Import-Module
,所有功能都将可用。
在Inside Modules中,你可以拥有与.psm1文件相同的文件夹,例如Modules/Configuration/Configuration.psm1
& Modules/Helper/Helper.psm1
。
if (!(Test-Path $Profile.AllUsersAllHosts)) {
$profile_new1 = New-Item -Type File -Path $Profile.AllUsersAllHosts -Force
Add-Content $profile_new1 '$env:PSModulePath = $env:PSModulePath + ";C:\Temp\Modules"'
} else {
$profile_exist = Get-Item $Profile.AllUsersAllHosts
Add-Content $profile_exist '$env:PSModulePath = $env:PSModulePath + ";C:\Temp\Modules"'
}