Install-Module
Загружает один или несколько модулей из репозитория и устанавливает их на локальном компьютере.
Синтаксис
NameParameterSet (По умолчанию)
Install-Module
[-Name] <String[]>
[-MinimumVersion <String>]
[-MaximumVersion <String>]
[-RequiredVersion <String>]
[-Repository <String[]>]
[-Credential <PSCredential>]
[-Scope <String>]
[-Proxy <Uri>]
[-ProxyCredential <PSCredential>]
[-AllowClobber]
[-SkipPublisherCheck]
[-Force]
[-AllowPrerelease]
[-AcceptLicense]
[-PassThru]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
InputObject
Install-Module
[-InputObject] <PSObject[]>
[-Credential <PSCredential>]
[-Scope <String>]
[-Proxy <Uri>]
[-ProxyCredential <PSCredential>]
[-AllowClobber]
[-SkipPublisherCheck]
[-Force]
[-AcceptLicense]
[-PassThru]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Описание
Командлет Install-Module получает один или несколько модулей, которые соответствуют указанным условиям из онлайн-репозитория. Командлет проверяет, являются ли результаты поиска допустимыми модулями и копирует папки модулей в расположение установки. Установленные модули не импортируются автоматически после установки.
Вы можете фильтровать модуль на основе минимальной, максимальной и точной версии указанных модулей.
Если установленный модуль имеет то же имя или версию или содержит команды в существующем модуле, отображаются предупреждающие сообщения. После подтверждения установки модуля и переопределения предупреждений используйте -Force параметры и -AllowClobber параметры. В зависимости от параметров репозитория может потребоваться ответить на запрос на продолжение установки модуля.
В этих примерах коллекция PowerShell используется в качестве единственного зарегистрированного репозитория.
Get-PSRepository отображает зарегистрированные репозитории. Если у вас несколько зарегистрированных репозиториев, используйте -Repository этот параметр, чтобы указать имя репозитория.
Примеры
Пример 1. Поиск и установка модуля
Этот пример находит модуль в репозитории и устанавливает модуль.
Find-Module -Name PowerShellGet | Install-Module
Использует Find-Module параметр Name для указания модуля PowerShellGet . По умолчанию последняя версия модуля загружается из репозитория. Объект отправляется по конвейеру командлету Install-Module .
Install-Moduleустанавливает модуль для всех пользователей.$env:ProgramFiles\PowerShell\Modules
Пример 2. Установка модуля по имени
В этом примере устанавливается последняя версия модуля PowerShellGet .
Install-Module -Name PowerShellGet
Использует Install-Module параметр Name для указания модуля PowerShellGet . По умолчанию последняя версия модуля загружается из репозитория и устанавливается.
Пример 3. Установка модуля с помощью минимальной версии
В этом примере устанавливается минимальная версия модуля PowerShellGet . Параметр MinimumVersion указывает самую низкую версию модуля, который должен быть установлен. Если доступна более новая версия модуля, эта версия загружается и устанавливается для всех пользователей.
Install-Module -Name PowerShellGet -MinimumVersion 2.0.1
Использует Install-Module параметр Name для указания модуля PowerShellGet . Параметр MinimumVersion указывает, что версия 2.0.1 загружается из репозитория и установлена. Так как доступна версия 2.0.4 , эта версия загружается и устанавливается для всех пользователей.
Пример 4. Установка определенной версии модуля
В этом примере устанавливается определенная версия модуля PowerShellGet .
Install-Module -Name PowerShellGet -RequiredVersion 2.0.0
Использует Install-Module параметр Name для указания модуля PowerShellGet . Параметр RequiredVersion указывает, что для всех пользователей скачиваются и устанавливаются версии 2.0.0 .
Пример 5. Установка модуля только для текущего пользователя
Этот пример загружает и устанавливает последнюю версию модуля только для текущего пользователя.
Install-Module -Name PowerShellGet -Scope CurrentUser
Использует Install-Module параметр Name для указания модуля PowerShellGet .
Install-Module загружает и устанавливает последнюю версию PowerShellGet в каталог $home\Documents\PowerShell\Modulesтекущего пользователя.
Параметры
-AcceptLicense
Для модулей, требующих лицензии, AcceptLicense автоматически принимает лицензионное соглашение во время установки. Дополнительные сведения см. в разделе "Модули, требующие принятия лицензий".
Свойства параметров
| Тип: | SwitchParameter |
| Default value: | None |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
Наборы параметров
(All)
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
-AllowClobber
Переопределяет предупреждения о конфликтах установки существующих команд на компьютере.
Перезаписывает существующие команды с тем же именем, что и команды, установленные модулем.
AllowClobber и Force можно использовать вместе в команде Install-Module .
Свойства параметров
| Тип: | SwitchParameter |
| Default value: | None |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
Наборы параметров
(All)
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
-AllowPrerelease
Позволяет установить модуль, помеченный как предварительный выпуск.
Свойства параметров
| Тип: | SwitchParameter |
| Default value: | None |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
Наборы параметров
NameParameterSet
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
-Confirm
Запрашивает подтверждение перед выполнением командлета Install-Module.
Свойства параметров
| Тип: | SwitchParameter |
| Default value: | False |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
| Aliases: | cf |
Наборы параметров
(All)
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
-Credential
Указывает учетную запись пользователя, которая имеет права на установку модуля для указанного поставщика пакетов или источника.
Свойства параметров
| Тип: | PSCredential |
| Default value: | None |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
Наборы параметров
(All)
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | True |
| Значение из оставшихся аргументов: | False |
-Force
Устанавливает модуль и переопределяет предупреждения о конфликтах установки модуля. Если модуль с тем же именем уже существует на компьютере, force позволяет установить несколько версий. Если существует существующий модуль с тем же именем и версией, принудительно перезаписывает ту же версию.
Принудительное использование и AllowClobber можно использовать вместе в команде Install-Module .
Свойства параметров
| Тип: | SwitchParameter |
| Default value: | None |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
Наборы параметров
(All)
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
-InputObject
Используется для ввода конвейера. Ошибка возникает, если значение, предоставленное непосредственно в InputObject. Используйте конвейер для передачи объектов с параметром InputObject .
Свойства параметров
| Тип: | PSObject[] |
| Default value: | None |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
Наборы параметров
InputObject
| Position: | 0 |
| Обязательно: | True |
| Значение из конвейера: | True |
| Значение из конвейера по имени свойства: | True |
| Значение из оставшихся аргументов: | False |
-MaximumVersion
Указывает максимальную версию одного модуля для установки. Установленная версия должна быть меньше или равна MaximumVersion. Если вы хотите установить несколько модулей, вы не можете использовать MaximumVersion.
MaximumVersion и RequiredVersion не могут использоваться в одной Install-Module команде.
Свойства параметров
| Тип: | String |
| Default value: | None |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
Наборы параметров
NameParameterSet
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | True |
| Значение из оставшихся аргументов: | False |
-MinimumVersion
Указывает минимальную версию одного модуля для установки. Установленная версия должна быть больше или равна минимальной версии. Если доступна более новая версия модуля, устанавливается более новая версия. Если вы хотите установить несколько модулей, вы не можете использовать MinimumVersion.
MinimumVersion и RequiredVersion не могут использоваться в одной Install-Module команде.
Свойства параметров
| Тип: | String |
| Default value: | None |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
Наборы параметров
NameParameterSet
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | True |
| Значение из оставшихся аргументов: | False |
-Name
Указывает точные имена модулей для установки из коллекции в Сети. Принимается разделенный запятыми список имен модулей. Имя модуля должно соответствовать имени модуля в репозитории. Используется Find-Module для получения списка имен модулей.
Свойства параметров
| Тип: | String[] |
| Default value: | None |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
Наборы параметров
NameParameterSet
| Position: | 0 |
| Обязательно: | True |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | True |
| Значение из оставшихся аргументов: | False |
-PassThru
Командлет Install-Module получает один или несколько модулей, которые соответствуют указанным условиям из онлайн-репозитория. Командлет проверяет, являются ли результаты поиска допустимыми модулями и копирует папки модулей в расположение установки. Установленные модули не импортируются автоматически после установки.
Вы можете фильтровать модуль на основе минимальной, максимальной и точной версии указанных модулей.
Если установленный модуль имеет то же имя или версию или содержит команды в существующем модуле, отображаются предупреждающие сообщения. После подтверждения установки модуля и переопределения предупреждений используйте -Force параметры и -AllowClobber параметры. В зависимости от параметров репозитория может потребоваться ответить на запрос на продолжение установки модуля.
В этих примерах коллекция PowerShell используется в качестве единственного зарегистрированного репозитория.
Get-PSRepository отображает зарегистрированные репозитории. Если у вас несколько зарегистрированных репозиториев, используйте -Repository этот параметр, чтобы указать имя репозитория.
Свойства параметров
| Тип: | SwitchParameter |
| Default value: | False |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
Наборы параметров
(All)
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
-Proxy
Указывает прокси-сервер для запроса, а не подключение непосредственно к интернет-ресурсу.
Свойства параметров
| Тип: | Uri |
| Default value: | None |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
Наборы параметров
(All)
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | True |
| Значение из оставшихся аргументов: | False |
-ProxyCredential
Указывает учетную запись пользователя, которая имеет разрешение на использование прокси-сервера, указанного параметром Proxy .
Свойства параметров
| Тип: | PSCredential |
| Default value: | None |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
Наборы параметров
(All)
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | True |
| Значение из оставшихся аргументов: | False |
-Repository
Используйте параметр Repository , чтобы указать, какой репозиторий используется для загрузки и установки модуля. Используется при регистрации нескольких репозиториев. Указывает имя зарегистрированного репозитория в команде Install-Module . Чтобы зарегистрировать репозиторий, используйте Register-PSRepository.
Чтобы отобразить зарегистрированные репозитории, используйте Get-PSRepository.
Свойства параметров
| Тип: | String[] |
| Default value: | None |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
Наборы параметров
NameParameterSet
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
-RequiredVersion
Указывает точную версию одного модуля для установки. Если в репозитории для указанной версии нет совпадений, отображается ошибка. Если вы хотите установить несколько модулей, вы не можете использовать RequiredVersion.
RequiredVersion нельзя использовать в той же Install-Module команде, что и MinimumVersion или MaximumVersion.
Свойства параметров
| Тип: | String |
| Default value: | None |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
Наборы параметров
NameParameterSet
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | True |
| Значение из оставшихся аргументов: | False |
-Scope
Указывает область установки модуля. Допустимые значения для этого параметра : AllUsers и CurrentUser.
Область AllUsers устанавливает модули в расположение, доступное для всех пользователей компьютера:
$env:ProgramFiles\PowerShell\Modules
CurrentUser устанавливает модули в расположение, доступное только текущему пользователю компьютера. Рассмотрим пример.
$home\Documents\PowerShell\Modules
Если область не определена, значение по умолчанию устанавливается на основе версии PowerShellGet.
- В PowerShellGet версии 2.0.0 и выше значение по умолчанию — CurrentUser, для которого не требуется повышение прав для установки.
- В версиях PowerShellGet 1.x значение по умолчанию — AllUsers, для которого требуется повышение прав для установки.
Свойства параметров
| Тип: | String |
| Default value: | None |
| Допустимые значения: | CurrentUser, AllUsers |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
Наборы параметров
(All)
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
-SkipPublisherCheck
Позволяет установить более новую версию модуля, уже существующего на компьютере. Например, когда существующий модуль имеет цифровую подпись доверенного издателя, но новая версия не подписана доверенным издателем.
Свойства параметров
| Тип: | SwitchParameter |
| Default value: | None |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
Наборы параметров
(All)
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
-WhatIf
Показывает, что произойдет при выполнении Install-Module команды. Командлет не запускается.
Свойства параметров
| Тип: | SwitchParameter |
| Default value: | False |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
| Aliases: | wi |
Наборы параметров
(All)
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
CommonParameters
Этот командлет поддерживает общие параметры: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction и -WarningVariable. Дополнительные сведения см. в разделе about_CommonParameters.
Входные данные
PSRepositoryItemInfo
Find-Module создает объекты PSRepositoryItemInfo , в которые можно отправить конвейер Install-Module.
String
PSObject
String
PSCredential
Uri
Выходные данные
Microsoft.PowerShell.Commands.PSRepositoryItemInfo
При использовании параметра Install-Module выводит объект PSRepositoryItemInfo для модуля. Это те же сведения, которые вы получаете от командлета Find-Module .
Примечания
Install-Module выполняется в выпусках PowerShell 5.0 или более поздних версий в Windows 7 или Windows 2008 R2 и более поздних выпусках Windows.
Это важно
По состоянию на апрель 2020 г. коллекция PowerShell больше не поддерживает протокол TLS версии 1.0 и 1.1. Если вы не используете TLS 1.2 или более поздней версии, при попытке получить доступ к коллекции PowerShell появится сообщение об ошибке. Используйте следующую команду, чтобы убедиться, что используется TLS 1.2:
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
Дополнительные сведения см. в объявления
Рекомендуется оценить код модуля перед первым выполнением командлетов или функций. Чтобы предотвратить запуск модулей, содержащих вредоносный код, установленные модули не импортируются автоматически после установки.
Если имя модуля, указанное параметром Name , не существует в репозитории, Install-Module возвращается ошибка.
Чтобы установить несколько модулей, используйте параметр Name и укажите разделенный запятыми массив имен модулей. Если указать несколько имен модулей, нельзя использовать MinimumVersion, MaximumVersion или RequiredVersion.
Find-Module создает объекты PSRepositoryItemInfo , в которые можно отправить конвейер Install-Module. Конвейер — это еще один способ указать несколько модулей для установки в одной команде.
По умолчанию модули для области AllUsers устанавливаются в $env:ProgramFiles\PowerShell\Modules. Значение по умолчанию предотвращает путаницу при установке ресурсов PowerShell Desired State Configuration (DSC).
Установка модуля завершается ошибкой и не может быть импортирована, если он не имеет .psm1, .psd1, или .dll аналогичного имени в папке. Используйте параметр Force для установки модуля.
Если версия существующего модуля совпадает с именем, указанным в параметре Name , и параметр MinimumVersion или RequiredVersion не используется, модуль автоматически продолжается, Install-Module но не устанавливается.
Если версия существующего модуля больше значения параметра MinimumVersion или равна значению параметра RequiredVersion , модуль автоматически продолжается, Install-Module но не устанавливается.
Если существующий модуль не соответствует значениям, указанным в параметрах MinimumVersion или RequiredVersion , в Install-Module команде возникает ошибка. Например, если версия существующего установленного модуля меньше значения MinimumVersion или не равна значению RequiredVersion .
При установке модуля также будут установлены все зависимые модули, указанные в соответствии с требованиями издателя модуля. Издатель укажет необходимые модули и их версии в манифесте модулей.