Поделиться через


Update-Module

Загружает и устанавливает последнюю версию указанных модулей из коллекции в сети на локальный компьютер.

Синтаксис

All

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-PSResource в Microsoft.PowerShell.PSResourceGet. Дополнительные сведения см. в разделе Update-PSResource.

Примеры

Пример 1. Обновление всех модулей

В этом примере все установленные модули обновляются до последней версии в коллекции в сети.

Update-Module

Пример 2. Обновление модуля по имени

В этом примере обновляется конкретный модуль до последней версии в коллекции в сети.

Update-Module -Name SpeculationControl

использует параметр имени для обновления определенного модуля SpeculationControl.

Пример 3. Просмотр Update-Module запусков Update-Module

В этом примере выполняется сценарий what-if, чтобы показать, что происходит, если выполняется 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

использует параметр имени для указания модуля SpeculationControl. Параметр RequiredVersion указывает версию 1.0.14.

Пример 5. Обновление модуля без подтверждения

Этот пример не запрашивает подтверждение обновления модуля до последней версии из коллекции в Сети. Если модуль уже установлен, параметр force переустановит модуль.

Update-Module -Name SpeculationControl -Force

использует параметр имени для указания модуля SpeculationControl. Параметр Force обновляет модуль без запроса подтверждения пользователя.

Параметры

-AcceptLicense

Автоматически примите лицензионное соглашение во время установки, если пакет требует его.

Свойства параметра

Тип:SwitchParameter
Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

(All)
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-AllowPrerelease

Позволяет обновить модуль с более новым модулем, помеченным как предварительная версия.

Командлет прокси-сервера сопоставляет этот параметр с параметром Update-PSResource .

Свойства параметра

Тип:SwitchParameter
Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

(All)
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-Confirm

Запрашивает подтверждение перед запуском Update-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 переустановит модуль.

Свойства параметра

Тип:SwitchParameter
Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

(All)
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-MaximumVersion

Командлет прокси-сервера использует значение этого параметра для создания строки поиска версий NuGet для использования с параметром Update-PSResource.

Свойства параметра

Тип:String
Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

(All)
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:True
Значение из оставшихся аргументов:False

-Name

Задает имена одного или нескольких модулей для обновления. Update-Module выполняет поиск $env:PSModulePath для обновления модулей. Если совпадения не найдены в $env:PSModulePath для указанного имени модуля, возникает ошибка.

Подстановочные знаки принимаются в именах модулей. Если вы добавляете подстановочные знаки в указанное имя и совпадения не найдены, ошибка не возникает.

Свойства параметра

Тип:

String[]

Default value:None
Поддерживаются подстановочные знаки:True
DontShow:False

Наборы параметров

(All)
Position:0
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:True
Значение из оставшихся аргументов:False

-PassThru

Возвращает объект, представляющий элемент, с которым вы работаете. По умолчанию этот командлет не создает выходные данные.

Свойства параметра

Тип:SwitchParameter
Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

(All)
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-Proxy

Командлет прокси-сервера игнорирует этот параметр, так как он не поддерживается Update-PSResource.

Свойства параметра

Тип:Uri
Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

(All)
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:True
Значение из оставшихся аргументов:False

-ProxyCredential

Командлет прокси-сервера игнорирует этот параметр, так как он не поддерживается Update-PSResource.

Свойства параметра

Тип:PSCredential
Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

(All)
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:True
Значение из оставшихся аргументов:False

-RequiredVersion

Командлет прокси-сервера использует значение этого параметра для создания строки поиска версий NuGet для использования с параметром Update-PSResource.

Свойства параметра

Тип:String
Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

(All)
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:True
Значение из оставшихся аргументов: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, для которого требуется повышение прав для установки.

Свойства параметра

Тип:String
Default value:CurrentUser
Допустимые значения:CurrentUser, AllUsers
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

(All)
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-WhatIf

Показывает, что произойдет, если Update-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.

Входные данные

String

String

PSCredential

Uri

Выходные данные

Object

Примечания

PowerShell включает следующие псевдонимы для Update-Module:

  • Все платформы:
    • upmo

Для PowerShell версии 6.0 и выше область установки по умолчанию всегда является CurrentUser. Обновления модулей для CurrentUser, $HOME\Documents\PowerShell\Modules, не требуют повышенных разрешений. Обновления модулей для AllUsers, $env:ProgramFiles\PowerShell\Modulesтребуют повышенных разрешений.

Коллекция PowerShell больше не поддерживает протокол TLS версии 1.0 и 1.1. Необходимо использовать TLS 1.2 или более поздней версии. Используйте следующую команду, чтобы убедиться, что используется TLS 1.2:

[Net.ServicePointManager]::SecurityProtocol = [Net.ServicePointManager]::SecurityProtocol -bor [Net.SecurityProtocolType]::Tls12

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 после остановки процессов.