Как поясняется в комментарии @TheMadTechnician, вы можете скопировать модуль с $env:PSMdulePath
запрошенных целевых машин.
Если у вас есть несколько компьютеров для распространения модулей, вы можете настроить собственную галерею Powershell через общий сетевой ресурс, как описано здесь (если это возможно в вашей компании). Исходя из этого, несколько компьютеров могут использовать командлеты Get-PSRepository
, Find-Module -Repository MyRepository
, Install-Module -Name MyModule -Repository MyRepository
, .. для администрирования модулей. Я использую эту частную галерею Powershell, чтобы распространять некоторые инструменты Git о нескольких dev-машинах. Вы также можете опубликовать собственные модули Powershell в этой галерее, в качестве фона используется NuGet. Таким образом, ваша машина с доступом к NuGet может сохранить новейший модуль через Save-Module
(возможно, через фоновое задание) и повторно опубликовать его в вашей частной галерее.
Вам также следует проверить, есть ли в модуле MSOnline
RequiredPackages
, который вам также необходимо скопировать. Вы можете сделать это через (где я использовал PowerShellGet
в качестве примера):
PS C:\> (Get-Module -ListAvailable | ? Name -eq PowerShellGet ).RequiredModules
ModuleType Version Name ExportedCommands
---------- ------- ---- ----------------
Script 1.0.0.1 PackageManagement
Может быть, это поможет.