次の方法で共有


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 にインストールされているモジュールが検索されます。

これは、Microsoft.PowerShell.PSResourceGetUpdate-PSResource コマンドレットのプロキシ コマンドレットです。 詳細については、「 Update-PSResource」を参照してください。

例 1: すべてのモジュールを更新する

この例では、インストールされているすべてのモジュールをオンライン ギャラリーの最新バージョンに更新します。

Update-Module

例 2: 名前でモジュールを更新する

次の使用例は、特定のモジュールをオンライン ギャラリーの最新バージョンに更新します。

Update-Module -Name SpeculationControl

Update-Module では、 Name パラメーターを使用して、特定のモジュール (SpeculationControl) を更新します。

例 3: what-if 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

Update-Module では、 Name パラメーターを使用してモジュール の SpeculationControl を指定します。 RequiredVersion パラメーターはバージョン 1.0.14 を指定します。

例 5: 確認なしでモジュールを更新する

この例では、オンライン ギャラリーからモジュールを最新バージョンに更新するための確認は要求しません。 モジュールが既にインストールされている場合は、 Force パラメーターによってモジュールが再インストールされます。

Update-Module -Name SpeculationControl -Force

Update-Module では、 Name パラメーターを使用してモジュール の SpeculationControl を指定します。 Force パラメーターは、ユーザーの確認を要求せずにモジュールを更新します。

パラメーター

-AcceptLicense

パッケージに必要な場合は、インストール時にライセンス契約に自動的に同意します。

型:SwitchParameter
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-AllowPrerelease

プレリリースとしてマークされた新しいモジュールでモジュールを更新できます。

プロキシ コマンドレットは、このパラメーターを Update-PSResourceプレリリース パラメーターにマップします。

型:SwitchParameter
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-Confirm

Update-Moduleを実行する前に確認を求めるメッセージが表示されます。

型:SwitchParameter
Aliases:cf
配置:Named
規定値:False
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-Credential

モジュールを更新するアクセス許可を持つユーザー アカウントを指定します。

型:PSCredential
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:True
ワイルドカード文字を受け取る:False

-Force

確認を要求するプロンプトを表示せずに、指定された各モジュールの更新を強制します。 モジュールが既にインストールされている場合は、 モジュールを強制的 に再インストールします。

型:SwitchParameter
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-MaximumVersion

プロキシ コマンドレットは、このパラメーターの値を使用して、Update-PSResourceVersion パラメーターで使用する NuGet バージョン検索文字列を作成します。

型:String
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:True
ワイルドカード文字を受け取る:False

-Name

更新する 1 つ以上のモジュールの名前を指定します。 Update-Module は、 $env:PSModulePath 更新するモジュールを検索します。 指定したモジュール名の $env:PSModulePath に一致が見つからない場合は、エラーが発生します。

ワイルドカードはモジュール名で使用できます。 指定した名前にワイルドカード文字を追加しても一致する文字が見つからない場合、エラーは発生しません。

型:String[]
配置:0
規定値:None
必須:False
パイプライン入力を受け取る:True
ワイルドカード文字を受け取る:True

-PassThru

作業中のアイテムを表すオブジェクトを返します。 既定では、このコマンドレットは出力を生成しません。

型:SwitchParameter
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-Proxy

プロキシ コマンドレットは、 Update-PSResourceでサポートされていないため、このパラメーターを無視します。

型:Uri
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:True
ワイルドカード文字を受け取る:False

-ProxyCredential

プロキシ コマンドレットは、 Update-PSResourceでサポートされていないため、このパラメーターを無視します。

型:PSCredential
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:True
ワイルドカード文字を受け取る:False

-RequiredVersion

プロキシ コマンドレットは、このパラメーターの値を使用して、Update-PSResourceVersion パラメーターで使用する NuGet バージョン検索文字列を作成します。

型:String
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:True
ワイルドカード文字を受け取る:False

-Scope

モジュールのインストール スコープを指定します。 このパラメーターに使用できる値は AllUsersCurrentUser ですスコープが指定されていない場合、更新プログラムは CurrentUser スコープにインストールされます。

AllUsers スコープには管理者特権が必要であり、コンピューターのすべてのユーザーがアクセスできる場所にモジュールをインストールします。

$env:ProgramFiles\PowerShell\Modules

CurrentUser は、管理者特権のアクセス許可を必要とせず、コンピューターの現在のユーザーのみがアクセスできる場所にモジュールをインストールします。

$HOME\Documents\PowerShell\Modules

スコープが定義されていない場合、既定は PowerShellGet バージョンに基づいて設定されます。

  • PowerShellGet バージョン 2.0.0 以降では、既定値は CurrentUser であり、インストールに昇格は必要ありません。
  • PowerShellGet 1.x バージョンでは、既定値は AllUsers であり、インストールには昇格が必要です。
型:String
指定可能な値:CurrentUser, AllUsers
配置:Named
規定値:CurrentUser
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-WhatIf

Update-Module が実行された場合の動作を示します。 コマンドレットは実行されません。

型:SwitchParameter
Aliases:wi
配置:Named
規定値:False
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

入力

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 の PowerShell 3.0 以降のリリース、Windows 7 または Windows 2008 R2 以降の Windows リリースで実行されます。

Name パラメーターで指定したモジュールが Install-Module を使用してインストールされていない場合は、エラーが発生します。

Install-Moduleを実行すると、オンライン ギャラリーからインストールしたモジュールでのみUpdate-Moduleを実行できます。

Update-Module使用中のバイナリを更新しようとすると、Update-Moduleは問題のプロセスを識別するエラーを返します。 プロセスが停止した後、 Update-Module 再試行するようにユーザーに通知されます。