Update-Module
Скачивает последние версии указанных модулей из веб-коллекции и устанавливает их на локальном компьютере.
Синтаксис
Update-Module
[[-Name] <String[]>]
[-RequiredVersion <String>]
[-MaximumVersion <String>]
[-Credential <PSCredential>]
[-Scope <String>]
[-Proxy <Uri>]
[-ProxyCredential <PSCredential>]
[-Force]
[-AllowPrerelease]
[-AcceptLicense]
[-PassThru]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Описание
Командлет Update-Module
устанавливает последнюю версию модуля из сетевой коллекции. Вам будет предложено подтвердить обновление перед установкой. Обновления устанавливаются только для модулей, которые были установлены на локальном компьютере с Install-Module
. Update-Module
выполняет поиск $env:PSModulePath
установленных модулей.
Update-Module
без указанных параметров обновляет все установленные модули. Чтобы указать модуль для обновления, используйте параметр Name . Вы можете выполнить обновление до конкретной версии модуля с помощью параметра RequiredVersion .
Параметры, которые принимают номера версий модуля, ожидают строк, отформатированных в виде номеров версий.
- Номера стандартных версий имеют формат
x.y.z
, где x, y и z — это числа. - Предварительные версии имеют формат
x.y.z-<prerelease_label>
, в котором является произвольной<prerelease_label>
строкой, назначенной данному выпуску.
Если установленный модуль уже является последней версией, модуль не обновляется. Если модуль не найден в $env:PSModulePath
, отображается сообщение об ошибке.
Чтобы отобразить установленные модули, используйте .Get-InstalledModule
Примеры
Пример 1. Обновление всех модулей
В этом примере все установленные модули обновляются до последней версии в онлайн-коллекции.
Update-Module
Пример 2. Обновление модуля по имени
В этом примере обновляется определенный модуль до последней версии в онлайн-коллекции.
Update-Module -Name SpeculationControl
Update-Module
использует параметр Name для обновления определенного модуля SpeculationControl.
Пример 3. Просмотр Update-Module выполнений Update-Module
В этом примере выполняется сценарий "что если", чтобы показать, что происходит при Update-Module
выполнении. Команда не выполняется.
Update-Module -WhatIf
What if: Performing the operation "Update-Module" on target "Version '2.8.0' of module
'Carbon', updating to version '2.8.1'".
What if: Performing the operation "Update-Module" on target "Version '1.0.10' of module
'SpeculationControl', updating to version '1.0.14'".
Update-Module
использует параметр WhatIf , отображая, что произойдет при Update-Module
выполнении.
Пример 4. Обновление модуля до указанной версии
В этом примере модуль обновляется до определенной версии. Версия должна существовать в онлайн-коллекции, иначе отобразится сообщение об ошибке.
Update-Module -Name SpeculationControl -RequiredVersion 1.0.14
Update-Module
использует параметр Name для указания модуля SpeculationControl. Параметр RequiredVersion указывает версию 1.0.14.
Пример 5. Обновление модуля без подтверждения
Этот пример не запрашивает подтверждение обновления модуля до последней версии из коллекции в Интернете. Если модуль уже установлен, параметр Force переустановит модуль.
Update-Module -Name SpeculationControl -Force
Update-Module
использует параметр Name для указания модуля SpeculationControl. Параметр Force обновляет модуль без запроса подтверждения пользователя.
Параметры
-AcceptLicense
Автоматически примите лицензионное соглашение во время установки, если это требуется пакету.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-AllowPrerelease
Позволяет обновить модуль с новым модулем, помеченным как предварительный выпуск.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Confirm
Запрашивает подтверждение перед запуском Update-Module
.
Type: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Credential
Указывает учетную запись пользователя, которая имеет разрешение на обновление модуля.
Type: | PSCredential |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Force
Принудительное обновление каждого указанного модуля без запроса на подтверждение. Если модуль уже установлен, принудительно переустановит модуль.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-MaximumVersion
Указывает максимальную версию одного модуля для обновления. Этот параметр нельзя добавить, если вы пытаетесь обновить несколько модулей. Параметры MaximumVersion и RequiredVersion нельзя использовать в одной команде.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Name
Указывает имена одного или нескольких модулей для обновления. Update-Module
выполняет поиск $env:PSModulePath
модулей для обновления. Если совпадений для указанного имени модуля не найдено $env:PSModulePath
, возникает ошибка.
Подстановочные знаки принимаются в именах модулей. Если вы добавляете подстановочные знаки в указанное имя и совпадений не найдено, ошибка не возникает.
Type: | String[] |
Position: | 0 |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | True |
-PassThru
Возвращает объект, представляющий элемент, с которым вы работаете. По умолчанию этот командлет не создает выходные данные.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Proxy
Указывает прокси-сервер для запроса, а не подключение напрямую к интернет-ресурсу.
Type: | Uri |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-ProxyCredential
Указывает учетную запись пользователя, которая имеет разрешение на использование прокси-сервера, указанного параметром Proxy .
Type: | PSCredential |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-RequiredVersion
Указывает точную версию, до которой будет обновлен существующий установленный модуль. Версия, указанная параметром RequiredVersion , должна существовать в интерактивной коллекции, иначе отобразится сообщение об ошибке. Если в одной команде обновляется несколько модулей, вы не сможете использовать RequiredVersion.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Scope
Задает область установки модуля. Допустимые значения для этого параметра: AllUsers и CurrentUser. Если область не указана, обновление устанавливается в область CurrentUser.
Область AllUsers требует повышенных разрешений и устанавливает модули в расположении, доступном для всех пользователей компьютера:
$env:ProgramFiles\PowerShell\Modules
CurrentUser не требует повышенных разрешений и устанавливает модули в расположении, доступном только текущему пользователю компьютера:
$HOME\Documents\PowerShell\Modules
Если область не определена, значение по умолчанию устанавливается на основе версии PowerShellGet.
- В PowerShellGet версии 2.0.0 и более поздних по умолчанию используется значение CurrentUser, которое не требует повышения прав для установки.
- В версиях PowerShellGet 1.x по умолчанию используется значение AllUsers, что требует повышения прав для установки.
Type: | String |
Accepted values: | CurrentUser, AllUsers |
Position: | Named |
Default value: | CurrentUser |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-WhatIf
Показывает, что произойдет при выполнении Update-Module
. Командлет не выполняется.
Type: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Входные данные
String[]
Выходные данные
Примечания
PowerShell включает следующие псевдонимы для Update-Module
:
- Для всех платформ.
upmo
Для PowerShell версии 6.0 и более поздних область установки по умолчанию всегда является CurrentUser.
Обновления модулей для CurrentUser, $HOME\Documents\PowerShell\Modules
, не требуют повышенных разрешений. Обновления модулей для AllUsers , $env:ProgramFiles\PowerShell\Modules
требуют повышенных разрешений.
Важно!
Начиная с апреля 2020 года коллекция PowerShell не поддерживает протокол TLS (Transport Layer Security) версий 1.0 и 1.1. Если вы не используете TLS 1.2 или более поздней версии, при попытке доступа к коллекции PowerShell возникнет ошибка. Чтобы проверить, используется ли TLS 1.2, выполните следующую команду:
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
Дополнительные сведения см. в объявлении в блоге, посвященном PowerShell.
Update-Module
Выполняется в PowerShell 3.0 или более поздних выпусках PowerShell, Windows 7 или Windows 2008 R2 и более поздних выпусках Windows.
Если модуль, указанный с параметром Name , не был установлен с помощью Install-Module
, возникает ошибка.
Вы можете запускать Update-Module
только модули, установленные из коллекции в Интернете, выполнив команду Install-Module
.
При Update-Module
попытке обновить используемые двоичные файлы возвращает ошибку, Update-Module
определяющую проблемные процессы. Пользователь уведомляется о том, что нужно повторить попытку Update-Module
после остановки процессов.
Связанные ссылки
PowerShellGet
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по