Save-Help
最新のヘルプ ファイルをダウンロードしてファイル システム ディレクトリに保存します。
構文
Save-Help
[-DestinationPath] <String[]>
[[-Module] <PSModuleInfo[]>]
[-FullyQualifiedModule <ModuleSpecification[]>]
[[-UICulture] <CultureInfo[]>]
[-Credential <PSCredential>]
[-UseDefaultCredentials]
[-Force]
[-Scope <UpdateHelpScope>]
[<CommonParameters>]
Save-Help
-LiteralPath <String[]>
[[-Module] <PSModuleInfo[]>]
[-FullyQualifiedModule <ModuleSpecification[]>]
[[-UICulture] <CultureInfo[]>]
[-Credential <PSCredential>]
[-UseDefaultCredentials]
[-Force]
[-Scope <UpdateHelpScope>]
[<CommonParameters>]
説明
Save-Help
コマンドレットは、PowerShell モジュールの最新のヘルプ ファイルをダウンロードし、指定したディレクトリに保存します。 この機能を使用すると、インターネットにアクセスできないコンピューター上のヘルプ ファイルを更新でき、複数のコンピューター上のヘルプ ファイルを更新しやすくなります。
Windows PowerShell 3.0 では、 Save-Help
ローカル コンピューターにインストールされているモジュールに対してのみ機能しました。 リモート コンピューターからモジュールをインポートしたり、PowerShell リモート処理を使用してリモート コンピューターから PSModuleInfo オブジェクトへの参照を取得したりすることはできますが、 HelpInfoUri プロパティは保持されず、リモート モジュール ヘルプでは Save-Help
機能しません。
Windows PowerShell 4.0 では、 HelpInfoUri プロパティは PowerShell リモート処理を介して保持されます。これにより、リモート コンピューターにインストールされているモジュールに対して Save-Help
が機能します。 インターネットにアクセスできないコンピューターでExport-Clixml
を実行しインターネットにアクセスできないコンピューターでオブジェクトをインポートし、PSModuleInfo オブジェクトでSave-Help
を実行することで、PSModuleInfo オブジェクトをディスクまたはリムーバブル メディアに保存することもできます。 保存されたヘルプは、USB ドライブなどのリムーバブル 記憶域メディアを使用してリモート コンピューターに転送できます。 ヘルプは、 Update-Help
を実行してリモート コンピューターにインストールできます。 このプロセスを使用すれば、どのようなネットワーク アクセスも実行できないコンピューターにヘルプをインストールできます。
保存したヘルプ ファイルをインストールするには、 Update-Help
コマンドレットを実行します。 その SourcePath パラメーターを追加して、ヘルプ ファイルを保存したフォルダーを指定します。
パラメーターがない場合、 Save-Help
コマンドは、セッション内のすべてのモジュールと、 PSModulePath 環境変数にリストされている場所にコンピューターにインストールされているモジュールに関する最新のヘルプダウンロードします。 このアクションでは、警告なしで更新可能なヘルプをサポートしていないモジュールはスキップされます。
Save-Help
コマンドレットは、移動先フォルダー内のヘルプ ファイルのバージョンを確認します。 新しいヘルプ ファイルが使用可能な場合、このコマンドレットは最新のヘルプ ファイルをインターネットからダウンロードし、フォルダーに保存します。 Save-Help
コマンドレットは、Update-Help
コマンドレットと同様に動作しますが、キャビネット ファイルからヘルプ ファイルを抽出してコンピューターにインストールするのではなく、ダウンロードしたキャビネット (.cab) ファイルを保存する点が異なります。
保存されたモジュール用ヘルプはそれぞれ、UI カルチャごとに、ヘルプ情報 (HelpInfo XML) ファイル 1 つと、ヘルプ ファイルのキャビネット (.cab) ファイル 1 つで構成されます。 キャビネット ファイルからヘルプ ファイルを抽出する必要はありません。 Update-Help
コマンドレットは、ヘルプ ファイルを抽出し、XML の安全性を検証してから、ヘルプ ファイルとヘルプ情報ファイルをモジュール フォルダーの言語固有のサブフォルダーにインストールします。
モジュールのヘルプ ファイルを PowerShell インストール フォルダー ($pshome\Modules
) に保存するには、[管理者として実行] オプションを使用して PowerShell を起動します。 これらのモジュールのヘルプ ファイルをダウンロードするには、そのコンピューターの Administrators グループのメンバーである必要があります。
このコマンドレットは、Windows PowerShell 3.0 で導入されました。
例
例 1: DhcpServer モジュールのヘルプを保存する
# Option 1: Run Invoke-Command to get the PSModuleInfo object for the remote DHCP Server module,
# save the PSModuleInfo object in the variable $m, and then run Save-Help.
$m = Invoke-Command -ComputerName RemoteServer -ScriptBlock { Get-Module -Name DhcpServer -ListAvailable }
Save-Help -Module $m -DestinationPath "C:\SavedHelp"
# Option 2: Open a PSSession--targeted at the remote computer that is running the DhcpServer
# module--to get the PSModuleInfo object for the remote module, and then run Save-Help.
$s = New-PSSession -ComputerName "RemoteServer"
$m = Get-Module -PSSession $s -Name "DhcpServer" -ListAvailable
Save-Help -Module $m -DestinationPath "C:\SavedHelp"
# Option 3: Open a CIM session--targeted at the remote computer that is running the DhcpServer
# module--to get the PSModuleInfo object for the remote module, and then run Save-Help.
$c = New-CimSession -ComputerName "RemoteServer"
$m = Get-Module -CimSession $c -Name "DhcpServer" -ListAvailable
Save-Help -Module $m -DestinationPath "C:\SavedHelp"
この例では、Save-Help
を使用して、DhcpServer モジュールまたは DHCP サーバーの役割をローカル コンピューターにインストールせずに、インターネットに接続されたクライアント コンピューターから DhcpServer モジュールのヘルプを保存する 3 つの異なる方法を示します。
例 2: DhcpServer モジュールのヘルプをインストールする
# First, run Export-CliXml to export the PSModuleInfo object to a shared folder or to removable media.
$m = Get-Module -Name "DhcpServer" -ListAvailable
Export-CliXml -Path "E:\UsbFlashDrive\DhcpModule.xml" -InputObject $m
# Next, transport the removable media to a computer that has Internet access, and then import the
# PSModuleInfo object with Import-CliXml. Run Save-Help to save the Help for the imported DhcpServer
# module PSModuleInfo object.
$deserialized_m = Import-CliXml "E:\UsbFlashDrive\DhcpModule.xml"
Save-Help -Module $deserialized_m -DestinationPath "E:\UsbFlashDrive\SavedHelp"
# Finally, transport the removable media back to the computer that does not have network access, and
# then install the help by running Update-Help.
Update-Help -Module DhcpServer -SourcePath "E:\UsbFlashDrive\SavedHelp"
この例では、インターネットにアクセスできないコンピューター上の DhcpServer モジュールの例 1 で保存したヘルプをインストールする方法を示します。
例 3: すべてのモジュールのヘルプを保存する
Save-Help -DestinationPath "\\Server01\FileShare01"
このコマンドは、ローカル コンピューター上の Windows に設定された UI カルチャに該当するすべてのモジュールの最新のヘルプ ファイルをダウンロードします。 ヘルプ ファイルは、 \\Server01\Fileshare01
フォルダーに保存されます。
例 4: コンピューター上のモジュールのヘルプを保存する
Save-Help -Module ServerManager -DestinationPath "\\Server01\FileShare01" -Credential Domain01/Admin01
このコマンドは、 ServerManager モジュールの最新のヘルプ ファイルをダウンロードし、 \\Server01\Fileshare01
フォルダーに保存します。
モジュールがコンピューターにインストールされている場合、モジュールが現在のセッションにインポートされていない場合でも、 Module パラメーターの値としてモジュール名を入力できます。
このコマンドでは、 Credential パラメーターを使用して、ファイル共有に書き込むアクセス許可を持つユーザーの資格情報を指定します。
例 5: モジュールのヘルプを別のコンピューターに保存する
Invoke-Command -ComputerName Server02 {Get-Module -Name CustomSQL -ListAvailable} | Save-Help -DestinationPath \\Server01\FileShare01 -Credential Domain01\Admin01
これらのコマンドは、 CustomSQL モジュールの最新のヘルプ ファイルをダウンロードし、 \\Server01\Fileshare01
フォルダーに保存します。
CustomSQL モジュールはコンピューターにインストールされていないため、シーケンスには、Server02 コンピューターから CustomSQL モジュールのモジュール オブジェクトを取得し、モジュール オブジェクトを Save-Help
コマンドレットにパイプするInvoke-Command
コマンドが含まれています。
モジュールがコンピューターにインストールされていない場合、 Save-Help
は最新のヘルプ ファイルの場所に関する情報を含むモジュール オブジェクトを必要とします。
例 6: モジュールのヘルプを複数の言語で保存する
Save-Help -Module Microsoft.PowerShell* -UICulture de-DE, en-US, fr-FR, ja-JP -DestinationPath "D:\Help"
このコマンドは、4 つの異なる UI カルチャのコア PowerShell モジュールのヘルプを保存します。 これらのロケールの言語パックをコンピューターにインストールする必要はありません。
Save-Help
では、モジュール所有者が翻訳されたファイルをインターネットで使用できるようにする場合にのみ、異なる UI カルチャのモジュールのヘルプ ファイルをダウンロードできます。
例 7: 1 日に 1 回以上ヘルプを保存する
Save-Help -Force -DestinationPath "\\Server3\AdminShare\Help"
このコマンドは、コンピューターにインストールされているすべてのモジュールのヘルプを保存します。 このコマンドは、 Force パラメーターを指定して、 Save-Help
コマンドレットが 24 時間ごとに複数回ヘルプをダウンロードできないようにするルールをオーバーライドします。
Force パラメーターは、1 GB の制限をオーバーライドし、バージョン チェックを回避します。 したがって、バージョンが移行先フォルダーのバージョンより後でない場合でも、ファイルをダウンロードできます。
このコマンドでは、 Save-Help
コマンドレットを使用して、ヘルプ ファイルをダウンロードし、指定したフォルダーに保存します。
Force パラメーターは、Save-Help
コマンドを毎日複数回実行する必要がある場合に必要です。
パラメーター
-Credential
ユーザー資格情報を指定します。 このコマンドレットは、 DestinationPath パラメーターで指定されたファイル システムの場所にアクセスするアクセス許可を持つユーザーの資格情報を使用してコマンドを実行します。 このパラメーターは、コマンドで DestinationPath または LiteralPath パラメーターが使用されている場合にのみ有効です。
このパラメーターを使用すると、リモート コンピューター Save-Help
DestinationPath パラメーターを使用するコマンドを実行できます。 明示的な資格情報を指定することで、アクセス拒否エラーが発生したり、CredSSP 認証を使用して資格情報を委任したりすることなく、リモート コンピューターでコマンドを実行し、3 番目のコンピューター上のファイル共有にアクセスできます。
User01 や Domain01\User01 などのユーザー名を入力するか、Get-Credential
コマンドレットによって生成されたPSCredential オブジェクトを入力します。 ユーザー名を入力すると、パスワードの入力を求められます。
資格情報は PSCredential オブジェクトに格納され、パスワードは SecureString として格納されます。
Note
SecureString データ保護の詳細については、「 SecureString のセキュリティ保護方法」を 参照してください。
型: | PSCredential |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-DestinationPath
ヘルプ ファイルを保存するフォルダーのパスを指定します。 ファイル名やファイル名拡張子を指定しないでください。
型: | String[] |
Aliases: | Path |
配置: | 0 |
規定値: | None |
必須: | True |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-Force
このコマンドレットが 1 日 1 回の制限に従わないことを示し、バージョン チェックをスキップし、1 GB の制限を超えるファイルをダウンロードします。
このパラメーターを指定しない場合、24 時間ごとにモジュールごとに 1 つの Save-Help
コマンドのみが許可され、ダウンロードはモジュールごとに 1 GB の非圧縮コンテンツに制限され、モジュールのヘルプ ファイルはコンピューター上のファイルよりも新しい場合にのみインストールされます。
1 日に 1 回の制限により、ヘルプ ファイルをホストするサーバーが保護され、powerShell プロファイルに Save-Help
コマンドを追加することが実用的になります。
Force パラメーターを使用せずに複数の UI カルチャでモジュールのヘルプを保存するには、次のようなすべての UI カルチャを同じコマンドに含めます。Save-Help -Module PSScheduledJobs -UICulture en-US, fr-FR, pt-BR
型: | SwitchParameter |
配置: | Named |
規定値: | False |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-FullyQualifiedModule
値には、モジュール名、完全なモジュール仕様、またはモジュール ファイルへのパスを指定できます。
値がパスの場合、パスは完全修飾または相対パスにすることができます。 相対パスは、using ステートメントを含むスクリプトを基準にして解決されます。
値が名前またはモジュールの指定である場合、PowerShell は指定されたモジュールの PSModulePath を検索します。
モジュール仕様は、次のキーを持つハッシュテーブルです。
ModuleName
- 必須 モジュール名を指定します。GUID
- 省略可能 モジュールの GUID を指定します。- また、以下の 3 つのキーのうち少なくとも 1 つを指定Required です。
ModuleVersion
- モジュールの最小許容バージョンを指定します。MaximumVersion
- モジュールの許容される最大バージョンを指定します。RequiredVersion
- モジュールの正確で必要なバージョンを指定します。 これは、他のバージョン キーでは使用できません。
Module パラメーターと同じコマンドで FullyQualifiedModule パラメーターを指定することはできません。 2 つのパラメーターは相互に排他的です。
型: | ModuleSpecification[] |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | True |
ワイルドカード文字を受け取る: | False |
-LiteralPath
移動先フォルダーのパスを指定します。 DestinationPath パラメーターの値とは異なり、LiteralPath パラメーターの値は、型指定されたとおりに使用されます。 ワイルドカードとして解釈される文字はありません。 パスにエスケープ文字が含まれている場合は、単一引用符で囲みます。 単一引用符は、エスケープ シーケンスとして文字を解釈しないように PowerShell に指示します。
型: | String[] |
Aliases: | PSPath, LP |
配置: | Named |
規定値: | None |
必須: | True |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-Module
このコマンドレットがヘルプをダウンロードするモジュールを指定します。 コンマ区切りリストまたは各行に 1 つのモジュール名を含むファイルに、1 つ以上のモジュール名または名前パターンを入力します。 ワイルドカード文字を使用できます。 Get-Module
コマンドレットからモジュール オブジェクトをパイプ処理して、Save-Help
することもできます。
既定では、 Save-Help
更新可能なヘルプをサポートし、 PSModulePath 環境変数に一覧表示されている場所にローカル コンピューターにインストールされているすべてのモジュールのヘルプをダウンロードします。
コンピューターにインストールされていないモジュールのヘルプを保存するには、リモート コンピューターで Get-Module
コマンドを実行します。 次に、結果のモジュール オブジェクトを Save-Help
コマンドレットにパイプするか、モジュール オブジェクトを Module または InputObject パラメーターの値として送信します。
指定したモジュールがコンピューターにインストールされている場合は、モジュール名またはモジュール オブジェクトを入力できます。 モジュールがコンピューターにインストールされていない場合は、 Get-Module
コマンドレットによって返されるモジュール オブジェクトなど、モジュール オブジェクトを入力する必要があります。
Save-Help
コマンドレットの Module パラメーターは、モジュール ファイルまたはモジュール マニフェスト ファイルの完全なパスを受け入れません。 PSModulePath の場所にないモジュールのヘルプを保存するには、Save-Help
コマンドを実行する前に、モジュールを現在のセッションにインポートします。
値 "*" (すべて) は、コンピューターにインストールされているすべてのモジュールのヘルプの更新を試みます。 これには、更新可能なヘルプをサポートしていないモジュールが含まれます。 この値は、更新可能なヘルプをサポートしていないモジュールがコマンドで検出されたときにエラーが発生する可能性があります。
型: | PSModuleInfo[] |
Aliases: | Name |
配置: | 1 |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | True |
ワイルドカード文字を受け取る: | True |
-Scope
このパラメーターは、このコマンドレットでは何も行いません。
型: | UpdateHelpScope |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | True |
ワイルドカード文字を受け取る: | False |
-UICulture
このコマンドレットが更新されたヘルプ ファイルを取得する UI カルチャ値を指定します。 1 つ以上の言語コード ( es-ES
、カルチャ オブジェクトを含む変数、または Get-Culture
や Get-UICulture
コマンドなどのカルチャ オブジェクトを取得するコマンドなど) を入力します。 ワイルドカード文字は使用できません。
既定では、 Save-Help
はオペレーティング システムまたはそのフォールバック カルチャの UI カルチャ セット内のヘルプ ファイルを取得します。 UICulture パラメーターを指定した場合、Save-Help
は指定された言語のヘルプのみを検索します。
PowerShell 7.4 以降では、 en
などの部分的な言語コードを使用して、任意のリージョンのヘルプを英語でダウンロードできます。
型: | CultureInfo[] |
配置: | 2 |
規定値: | Current UI culture |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-UseDefaultCredentials
このコマンドレットが、現在のユーザーの資格情報を使用して、Web ダウンロードを含むコマンドを実行することを示します。 既定では、コマンドは明示的な資格情報がない状態で実行されます。
このパラメーターは、Web ダウンロードが、NTLM、Negotiate、または Kerberos ベース認証を使用する場合に限り有効です。
型: | SwitchParameter |
配置: | Named |
規定値: | False |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
入力
モジュール オブジェクトをこのコマンドレットにパイプできます。
出力
None
このコマンドレットは、出力を返しません。
メモ
- $pshome\Modules フォルダーにモジュールのヘルプを保存するには、[管理者として実行] オプションを使用して PowerShell を起動します。 コンピューター上の Administrators グループのメンバーのみが、$pshome\Modules フォルダー内のモジュールのヘルプをダウンロードできます。
- 保存されたモジュール用ヘルプはそれぞれ、UI カルチャごとに、ヘルプ情報 (HelpInfo XML) ファイル 1 つと、ヘルプ ファイルのキャビネット (.cab) ファイル 1 つで構成されます。 キャビネット ファイルからヘルプ ファイルを抽出する必要はありません。
Update-Help
コマンドレットは、ヘルプ ファイルを抽出し、XML を検証してから、ヘルプ ファイルとヘルプ情報ファイルをモジュール フォルダーの言語固有のサブフォルダーにインストールします。 Save-Help
コマンドレットは、コンピューターにインストールされていないモジュールのヘルプを保存できます。 ただし、ヘルプ ファイルはモジュール フォルダーにインストールされるため、Update-Help
コマンドレットは、コンピューターにインストールされているモジュールに対してのみ、更新されたヘルプ ファイルをインストールできます。Save-Help
モジュールの更新されたヘルプ ファイルが見つからない場合、または指定した言語で更新されたヘルプ ファイルが見つからない場合は、エラー メッセージが表示されずに通知なしで続行されます。 コマンドによって保存されたファイルを確認するには、 Verbose パラメーターを指定します。- モジュールは、更新可能なヘルプの最小単位です。 特定のコマンドレットのヘルプを保存することはできません。モジュール内のすべてのコマンドレットに対してのみ保存できます。 特定のコマンドレットを含むモジュールを検索するには、 ModuleName プロパティを
Get-Command
コマンドレットと共に使用します。次に例を示します。(Get-Command \<cmdlet-name\>).ModuleName
Save-Help
では、すべてのモジュールとコア PowerShell スナップインがサポートされます。他のスナップインはサポートされていません。Update-Help
コマンドレットとSave-Help
コマンドレットは、ヘルプ ファイルをダウンロードするために次のポートを使用します。HTTP の場合はポート 80、HTTPS の場合はポート 443 です。Update-Help
コマンドレットとSave-Help
コマンドレットは、Windows プレインストール環境 (Windows PE) ではサポートされていません。
関連リンク
PowerShell