Update-Help
コンピューターに最新のヘルプ ファイルをダウンロードしてインストールします。
構文
Update-Help
[[-Module] <String[]>]
[-FullyQualifiedModule <ModuleSpecification[]>]
[[-SourcePath] <String[]>]
[-Recurse]
[[-UICulture] <CultureInfo[]>]
[-Credential <PSCredential>]
[-UseDefaultCredentials]
[-Force]
[-Scope <UpdateHelpScope>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Update-Help
[[-Module] <String[]>]
[-FullyQualifiedModule <ModuleSpecification[]>]
[-LiteralPath <String[]>]
[-Recurse]
[[-UICulture] <CultureInfo[]>]
[-Credential <PSCredential>]
[-UseDefaultCredentials]
[-Force]
[-Scope <UpdateHelpScope>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
説明
Update-Help
コマンドレットは、PowerShell モジュールの最新のヘルプ ファイルをダウンロードし、コンピューターにインストールします。 変更を有効にするために PowerShell を再起動する必要はありません。
Get-Help
コマンドレットを使用すると、新しいヘルプ ファイルをすぐに表示できます。
Update-Help
は、コンピューター上のヘルプ ファイルのバージョンを確認します。 モジュールのヘルプ ファイルがない場合、またはヘルプ ファイルが古い場合は、Update-Help
は最新のヘルプ ファイルをダウンロードします。 ヘルプ ファイルは、インターネットまたはファイル共有からダウンロードしてインストールできます。
パラメーターがない場合、Update-Help
更新可能なヘルプをサポートするモジュールのヘルプ ファイルが更新され、セッションに読み込まれるか、$env:PSModulePath
に含まれる場所にインストールされます。 詳細については、about_Updatable_Helpを参照してください。
Update-Help
は、インストールされているヘルプのバージョンを確認します。 モジュール Update-Help
更新されたヘルプ ファイルが見つからない場合は、エラー メッセージが表示されずにサイレント状態で続行されます。
Force パラメーターを使用して、バージョン チェックをスキップします。 状態と進行状況の詳細を表示するには、Verbose パラメーターを使用します。
Module パラメーターを使用して、特定のモジュールのヘルプ ファイルを更新します。
インターネットに接続されていないコンピューターで Update-Help
を使用することもできます。 まず、Save-Help
コマンドレットを使用して、インターネットからヘルプ ファイルをダウンロードし、インターネットに接続されていないシステムからアクセスできる共有フォルダーに保存します。 次に、Update-Help
の SourcePath パラメーターを使用して、更新されたヘルプ ファイルを共有からダウンロードし、コンピューターにインストールします。
Update-Help
コマンドレットは、Windows PowerShell 3.0 で導入されました。
大事な
Update-Help
には、PowerShell 6.0 以降の管理特権が必要です。 PowerShell 6.1 以降では、既定の Scope を CurrentUser
に設定します。 PowerShell 6.1 より前では、Scope パラメーターは使用できませんでした。
コア PowerShell モジュールのヘルプ ファイルを更新するには、コンピューターの Administrators グループのメンバーである必要があります。
PowerShell Core モジュールを含む PowerShell インストール ディレクトリ ($PSHOME\Modules
) のモジュールのヘルプ ファイルをダウンロードまたは更新するには、管理者として実行 オプションを使用して PowerShell を起動します。 例: Start-Process pwsh.exe -Verb RunAs
.
例
例 1: すべてのモジュールのヘルプ ファイルを更新する
Update-Help
コマンドレットは、更新可能なヘルプをサポートするインストール済みモジュールのヘルプ ファイルを更新します。 ユーザー インターフェイス (UI) カルチャ言語は、オペレーティング システムで設定されます。
Update-Help
例 2: 指定したモジュールのヘルプ ファイルを更新する
Update-Help
コマンドレットは、Microsoft.PowerShell で始まるモジュール名ヘルプ ファイルのみを更新します。
Update-Help -Module Microsoft.PowerShell*
例 3: en-US ロケールに設定されていないシステムでのヘルプの更新
Update-Help
コマンドレットは、複数の言語でヘルプをダウンロードするように設計されています。 ただし、システムで使用する言語にヘルプがない場合は、モジュールと UI カルチャに関するエラー メッセージが表示されます。
この例では、Update-Help
は、en-GB
ロケールに設定されているシステムで実行されています。
Update-Help Microsoft.PowerShell.Utility -Force
Update-Help: Failed to update Help for the module(s) 'Microsoft.PowerShell.Utility' with
UI culture(s) {en-GB} : The specified culture is not supported: en-GB. Specify a culture
from the following list: {en-US}..
English-US help content is available and can be installed using: Update-Help -UICulture en-US.
ヘルプ ファイルは、常に en-US
ロケールに対して発行されます。 英語のヘルプをダウンロードするには、UICulture パラメーターを使用して Update-Help
を実行し、en-US
ロケールを指定します。
例 4: ファイル共有から複数のコンピューター上のヘルプ ファイルを更新する
この例では、更新されたヘルプ ファイルがインターネットからダウンロードされ、ファイル共有に保存されます。 ファイル共有にアクセスして更新プログラムをインストールするためのアクセス許可を持つユーザー資格情報が必要です。 ファイル共有を使用すると、ファイアウォールの内側にあるコンピューターやインターネットに接続されていないコンピューターを更新できます。
Save-Help -DestinationPath \\Server01\Share\PSHelp -Credential Domain01\Admin01
Invoke-Command -ComputerName (Get-Content Servers.txt) -ScriptBlock {
Update-Help -SourcePath \\Server01\Share\PSHelp -Credential Domain01\Admin01
}
Save-Help
コマンドは、更新可能なヘルプをサポートするすべてのモジュールの最新のヘルプ ファイルをダウンロードします。
DestinationPath パラメーターは、\\Server01\Share\PSHelp
ファイル共有にファイルを保存します。
Credential パラメーターは、ファイル共有にアクセスする権限を持つユーザーを指定します。
Invoke-Command
コマンドレットは、複数のコンピューターでリモート Update-Help
コマンドを実行します。
ComputerName パラメーターは、Servers.txt ファイルからリモート コンピューターの一覧を取得します。
ScriptBlock パラメーターは、Update-Help
コマンドを実行し、SourcePath パラメーターを使用して、更新されたヘルプ ファイルを含むファイル共有を指定します。
Credential パラメーターは、ファイル共有にアクセスしてリモート Update-Help
コマンドを実行できるユーザーを指定します。
例 5: 更新されたヘルプ ファイルの一覧を取得する
Update-Help
コマンドレットは、指定したモジュールのヘルプを更新します。 コマンドレットは、Verbose 共通パラメーターを使用して、更新されたヘルプ ファイルの一覧を表示します。 詳細 使用して、特定のモジュールのすべてのヘルプ ファイルまたはヘルプ ファイルの出力を表示できます。
Verbose パラメーターがないと、Update-Help
はコマンドの結果を表示しません。
Verbose パラメーターの出力は、ヘルプ ファイルが更新されたか、最新バージョンがインストールされているかどうかを確認するのに役立ちます。
Update-Help -Module Microsoft.PowerShell.Utility -Verbose
例 6: 更新可能なヘルプをサポートするモジュールを検索する
この例では、更新可能なヘルプをサポートするモジュールの一覧を示します。 このコマンドは、モジュールの HelpInfoUri プロパティを使用して、更新可能なヘルプをサポートするモジュールを識別します。
HelpInfoUri プロパティには、Update-Help
コマンドレットの実行時にリダイレクトされる URL が含まれています。
Get-Module -ListAvailable | Where-Object -Property HelpInfoUri
Directory: C:\program files\powershell\6\Modules
ModuleType Version Name PSEdition ExportedCommands
---------- ------- ---- --------- ----------------
Manifest 6.1.0.0 CimCmdlets Core {Get-CimAssociatedInstance... }
Manifest 1.2.2.0 Microsoft.PowerShell.Archive Desk {Compress-Archive... }
Manifest 6.1.0.0 Microsoft.PowerShell.Diagnostics Core {Get-WinEvent, New-WinEvent}
Directory: C:\WINDOWS\system32\WindowsPowerShell\v1.0\Modules
ModuleType Version Name PSEdition ExportedCommands
---------- ------- ---- --------- ----------------
Manifest 2.0.1.0 Appx Core,Desk {Add-AppxPackage, ... }
Script 1.0.0.0 AssignedAccess Core,Desk {Clear-AssignedAccess, ... }
Manifest 1.0.0.0 BitLocker Core,Desk {Unlock-BitLocker, ... }
例 7: 更新されたヘルプ ファイルのインベントリ
この例では、スクリプト Get-UpdateHelpVersion.ps1
は、各モジュールとそのバージョン番号の更新可能なヘルプ ファイルのインベントリを作成します。
このスクリプトは、モジュールの HelpInfoUri プロパティを使用して、更新可能なヘルプをサポートするモジュールを識別します。 更新可能なヘルプをサポートするモジュールの場合、スクリプトはヘルプ情報ファイル (*helpinfo.xml) を検索して解析し、最新バージョン番号を検索します。
このスクリプトでは、PSCustomObject クラスとハッシュ テーブルを使用して、カスタム出力オブジェクトを作成します。
# Get-UpdateHelpVersion.ps1
Param(
[parameter(Mandatory=$False)]
[String[]]
$Module
)
$HelpInfoNamespace = @{helpInfo='http://schemas.microsoft.com/powershell/help/2010/05'}
if ($Module) { $Modules = Get-Module $Module -ListAvailable | where {$_.HelpInfoUri} }
else { $Modules = Get-Module -ListAvailable | where {$_.HelpInfoUri} }
foreach ($mModule in $Modules)
{
$mDir = $mModule.ModuleBase
if (Test-Path $mDir\*helpinfo.xml)
{
$mName=$mModule.Name
$mNodes = dir $mDir\*helpinfo.xml -ErrorAction SilentlyContinue |
Select-Xml -Namespace $HelpInfoNamespace -XPath "//helpInfo:UICulture"
foreach ($mNode in $mNodes)
{
$mCulture=$mNode.Node.UICultureName
$mVer=$mNode.Node.UICultureVersion
[PSCustomObject]@{"ModuleName"=$mName; "Culture"=$mCulture; "Version"=$mVer}
}
}
}
ModuleName Culture Version
---------- ------- -------
ActiveDirectory en-US 3.0.0.0
ADCSAdministration en-US 3.0.0.0
ADCSDeployment en-US 3.0.0.0
ADDSDeployment en-US 3.0.0.0
ADFS en-US 3.0.0.0
パラメーター
-Confirm
コマンドレットを実行する前に確認を求めるメッセージが表示されます。
型: | SwitchParameter |
Aliases: | cf |
配置: | Named |
規定値: | False |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-Credential
SourcePath で指定されたファイル システムの場所にアクセスするアクセス許可を持つユーザー資格情報を指定します。 このパラメーターは、SourcePath または LiteralPath パラメーターがコマンドで使用されている場合にのみ有効です。
Credential パラメーターを使用すると、リモート コンピューターで SourcePath パラメーター Update-Help
コマンドを実行できます。 明示的な資格情報を指定することで、アクセス拒否エラーが発生したり、CredSSP 認証を使用して資格情報を委任したりすることなく、リモート コンピューターでコマンドを実行し、3 番目のコンピューター上のファイル共有にアクセスできます。
User01 や Domain01\User01などのユーザー名を入力するか、Get-Credential
コマンドレットによって生成された PSCredential オブジェクトを入力します。 ユーザー名を入力すると、パスワードの入力を求められます。
資格情報は PSCredential オブジェクトに格納され、パスワードは SecureStringとして格納されます。
手記
SecureString データ保護 の詳細については、「SecureString のセキュリティ 方法」を参照してください。.
型: | PSCredential |
配置: | Named |
規定値: | Current user |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-Force
このコマンドレットが 1 日 1 回の制限に従っていないことを示し、バージョン チェックをスキップし、1 GB の制限を超えるファイルをダウンロードします。
このパラメーターを指定しない場合、Update-Help
は 24 時間ごとに 1 回だけ実行されます。 ダウンロードはモジュールごとに 1 GB の非圧縮コンテンツに制限され、ヘルプ ファイルはコンピューター上の既存のファイルよりも新しい場合にのみインストールされます。
1 日に 1 回の制限により、ヘルプ ファイルをホストするサーバーが保護され、Update-Help
コマンドを PowerShell プロファイルに追加する際に、接続やダウンロードの繰り返しのリソース コストを発生させることなく、実用的になります。
Force パラメーターを使用せずに複数の UI カルチャのモジュールのヘルプを更新するには、次のようなすべての UI カルチャを同じコマンドに含めます。
Update-Help -Module PSScheduledJobs -UICulture en-US, fr-FR, pt-BR
型: | SwitchParameter |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-FullyQualifiedModule
値には、モジュール名、完全なモジュール仕様、またはモジュール ファイルへのパスを指定できます。
値がパスの場合、パスは完全修飾または相対パスにすることができます。 相対パスは、using ステートメントを含むスクリプトを基準にして解決されます。
値が名前またはモジュールの指定である場合、PowerShell は指定されたモジュールの PSModulePath を検索します。
モジュール仕様は、次のキーを持つハッシュテーブルです。
-
ModuleName
- 必須 モジュール名を指定します。 -
GUID
- 省略可能 モジュールの GUID を指定します。 - また、以下の 3 つのキーのうち少なくとも 1 つを指定する必要 も。
-
ModuleVersion
- モジュールの最小許容バージョンを指定します。 -
MaximumVersion
- モジュールの許容される最大バージョンを指定します。 -
RequiredVersion
- モジュールの正確で必要なバージョンを指定します。 これは、他のバージョン キーでは使用できません。
-
Module パラメーターと同じコマンドで、FullyQualifiedModule パラメーターを指定することはできません。
型: | ModuleSpecification[] |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | True |
ワイルドカード文字を受け取る: | False |
-LiteralPath
インターネットからダウンロードするのではなく、更新されたヘルプ ファイルのフォルダーを指定します。
Save-Help
コマンドレットを使用してヘルプ ファイルをディレクトリにダウンロードした場合は、このパラメーターを使用するか、SourcePath を します。
Get-Item
や Get-ChildItem
コマンドレットなどのディレクトリ オブジェクトをパイプライン処理して、Update-Help
できます。
SourcePathの値とは異なり、LiteralPath の値は、型指定されたとおりに使用されます。 ワイルドカード文字として解釈される文字はありません。 パスにエスケープ文字が含まれている場合は、単一引用符で囲みます。 単一引用符は、エスケープ シーケンスとして文字を解釈しないように PowerShell に指示します。
型: | String[] |
Aliases: | PSPath, LP |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | True |
ワイルドカード文字を受け取る: | False |
-Module
指定したモジュールのヘルプを更新します。 コンマ区切りリストに 1 つ以上のモジュール名または名前パターンを入力するか、各行に 1 つのモジュール名をリストするファイルを指定します。 ワイルドカード文字を使用できます。
Get-Module
コマンドレットから Update-Help
コマンドレットにモジュールをパイプライン処理できます。
指定するモジュールはコンピューターにインストールする必要がありますが、現在のセッションにインポートする必要はありません。 セッション内の任意のモジュール、または $env:PSModulePath
環境変数にリストされている場所にインストールされている任意のモジュールを指定できます。
値が *
(all) の場合、コンピューターにインストールされているすべてのモジュールのヘルプの更新が試行されます。
更新可能なヘルプをサポートしていないモジュールが含まれています。 この値は、更新可能なヘルプをサポートしていないモジュールがコマンドで検出されたときにエラーが発生する可能性があります。 代わりに、パラメーターを指定せずに Update-Help
を実行します。
Update-Help
コマンドレットの Module パラメーターは、モジュール ファイルまたはモジュール マニフェスト ファイルの完全なパスを受け入れられません。
$env:PSModulePath
の場所にないモジュールのヘルプを更新するには、Update-Help
コマンドを実行する前に、モジュールを現在のセッションにインポートします。
型: | String[] |
Aliases: | Name |
配置: | 0 |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | True |
ワイルドカード文字を受け取る: | True |
-Recurse
指定したディレクトリ内のヘルプ ファイルを再帰的に検索します。 このパラメーターは、コマンドが SourcePath パラメーターを使用する場合にのみ有効です。
型: | SwitchParameter |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-Scope
ヘルプが更新されるシステム スコープを指定します。
AllUsers スコープでの更新には、Windows システムに対する管理特権が必要です。
-Scope
パラメーターは、PowerShell Core バージョン 6.1 で導入されました。
CurrentUser は、PowerShell 6.1 以降のヘルプ ファイルの既定のスコープです。
AllUsers を指定して、すべてのユーザーのヘルプをインストールまたは更新できます。 Unix システムでは、すべてのユーザーのヘルプを更新するには、sudo
特権が必要です。 例: sudo pwsh -c Update-Help
許容される値は次のとおりです。
- CurrentUser
- AllUsers
型: | UpdateHelpScope |
配置: | Named |
規定値: | CurrentUser |
必須: | False |
パイプライン入力を受け取る: | True |
ワイルドカード文字を受け取る: | False |
-SourcePath
インターネットからダウンロードするのではなく、Update-Help
が更新されたヘルプ ファイルを取得するファイル システム フォルダーを指定します。 フォルダーのパスを入力します。 ファイル名またはファイル名拡張子を指定しないでください。
Get-Item
または Get-ChildItem
コマンドレットのフォルダーなど、フォルダーをパイプライン処理して Update-Help
できます。
既定では、Update-Help
は更新されたヘルプ ファイルをインターネットからダウンロードします。
Save-Help
コマンドレット 使用して更新されたヘルプ ファイルをディレクトリにダウンロードした場合は、SourcePath を使用します。
SourcePathの既定値を指定するには、[グループ ポリシーの ][コンピューターの構成] に移動し、[Update-Help の既定のソース パスを設定する] をします。 このグループ ポリシー設定により、ユーザーは Update-Help
を使用してインターネットからヘルプ ファイルをダウンロードできなくなります。
詳細については、about_Group_Policy_Settingsを参照してください。
型: | String[] |
Aliases: | Path |
配置: | 1 |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-UICulture
このコマンドレットが更新されたヘルプ ファイルを取得する UI カルチャ値を指定します。
es-ES
、カルチャ オブジェクトを含む変数、またはカルチャ オブジェクトを取得するコマンド (Get-Culture
、Get-UICulture
コマンドなど) など、1 つ以上の言語コードを入力します。 ワイルドカード文字は使用できません。
既定では、Update-Help
はオペレーティング システムまたはそのフォールバック カルチャの UI カルチャ セット内のヘルプ ファイルを取得します。
UICulture パラメーターを指定した場合、Update-Help
は、指定した言語のヘルプのみを検索します。
PowerShell 7.4 以降では、en
などの部分的な言語コードを使用して、任意のリージョンのヘルプを英語でダウンロードできます。
手記
Ubuntu 18.04 では、認識された UI カルチャではない既定のロケール設定が C.UTF.8
に変更されました。
Update-Help
サポートされているロケール (en-US
など) でこのパラメーターを使用しない限り、ヘルプのダウンロードは自動的に失敗します。 これは、サポートされていない値を使用するすべてのプラットフォームで発生する可能性があります。
型: | CultureInfo[] |
配置: | 2 |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-UseDefaultCredentials
Update-Help
、現在のユーザーの資格情報を使用して、インターネットダウンロードを含むコマンドを実行することを示します。 既定では、コマンドは明示的な資格情報なしで実行されます。
このパラメーターは、Web ダウンロードで NT LAN Manager (NTLM)、ネゴシエート、または Kerberos ベースの認証が使用されている場合にのみ有効です。
型: | SwitchParameter |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-WhatIf
コマンドレットを実行した場合の動作を示します。 コマンドレットは実行されません。
型: | SwitchParameter |
Aliases: | wi |
配置: | Named |
規定値: | False |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
入力
このコマンドレットには、ディレクトリ パス オブジェクトをパイプ処理できます。
モジュール オブジェクトをこのコマンドレットにパイプできます。
出力
None
このコマンドレットは出力を返しません。
メモ
PowerShell でインストールされているコマンド、または $PSHOME\Modules
ディレクトリ内のモジュールを含む主要な PowerShell モジュールのヘルプを更新するには、[管理者として実行] をオプションを使用して PowerShell を起動します。
コンピューター上の Administrators グループのメンバーのみが、コア PowerShell モジュール、PowerShell と共にインストールされるコマンド、および $PSHOME\Modules
フォルダー内のモジュールのヘルプを更新できます。 ヘルプ ファイルを更新するアクセス許可がない場合は、ヘルプ ファイルをオンラインで読み取ることができます。 たとえば、Get-Help Update-Help -Online
します。
モジュールは、更新可能なヘルプの最小単位です。 特定のコマンドレットのヘルプを更新することはできません。 特定のコマンドレットを含むモジュールを検索するには、Get-Command
コマンドレットの ModuleName プロパティを使用します (例: (Get-Command Update-Help).ModuleName
)。
ヘルプ ファイルはモジュール ディレクトリにインストールされるため、Update-Help
コマンドレットは、コンピューターにインストールされているモジュールに対してのみ、更新されたヘルプ ファイルをインストールできます。 ただし、Save-Help
コマンドレットは、コンピューターにインストールされていないモジュールのヘルプを保存できます。
Update-Help
コマンドレットは、Windows PowerShell 3.0 で導入されました。 以前のバージョンの PowerShell では機能しません。 Windows PowerShell 2.0 と Windows PowerShell 3.0 の両方を持つコンピューターでは、Windows PowerShell 3.0 セッションの Update-Help
コマンドレットを使用して、ヘルプ ファイルをダウンロードして更新します。 ヘルプ ファイルは、Windows PowerShell 2.0 と Windows PowerShell 3.0 の両方で使用できます。
Update-Help
および Save-Help
コマンドレットは、ヘルプ ファイルをダウンロードするために次のポートを使用します。HTTP の場合はポート 80、HTTPS の場合はポート 443 です。
Update-Help
では、すべてのモジュールとコア PowerShell スナップインがサポートされます。他のスナップインはサポートされていません。
$env:PSModulePath
環境変数にリストされていない場所にあるモジュールのヘルプを更新するには、モジュールを現在のセッションにインポートしてから、Update-Help
コマンドを実行します。 パラメーターを指定せずに Update-Help
を実行するか、Module パラメーターを使用してモジュール名を指定します。
Update-Help
コマンドレットと Save-Help
コマンドレットの Module パラメーターは、モジュール ファイルまたはモジュール マニフェスト ファイルの完全なパスを受け入れられません。
どのモジュールでも、更新可能なヘルプをサポートできます。 作成するモジュールで更新可能なヘルプをサポートする手順については、「更新可能なヘルプ のサポートを参照してください。
Update-Help
コマンドレットと Save-Help
コマンドレットは、Windows プレインストール環境 (Windows PE) ではサポートされていません。
関連リンク
PowerShell