次の方法で共有


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 オブジェクトをディスクまたはリムーバブル メディアに保存し、インターネットにアクセスできるコンピューターにオブジェクトをインポートしてから、PSModuleInfo オブジェクトで実行Save-Helpすることもできます。 保存されたヘルプは、USB ドライブなどのリムーバブル 記憶域メディアを使用してリモート コンピューターに転送できます。 を実行 Update-Helpして、リモート コンピューターにヘルプをインストールできます。 このプロセスを使用すれば、どのようなネットワーク アクセスも実行できないコンピューターにヘルプをインストールできます。

保存したヘルプ ファイルをインストールするには、 コマンドレットを実行します Update-HelpSourcePath パラメーターを追加して、ヘルプ ファイルを保存したフォルダーを指定します。

パラメーターがない場合、コマンドは 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"

この例では、DhcpServer モジュールまたは DHCP サーバーの役割をローカル コンピューターにインストールせずに、インターネットに接続されたクライアント コンピューターから DhcpServer モジュールのヘルプを保存するために使用Save-Helpする 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: ヘルプを毎日複数回保存する

Save-Help -Force -DestinationPath "\\Server3\AdminShare\Help"

このコマンドは、コンピューターにインストールされているすべてのモジュールのヘルプを保存します。 コマンドは 24 時間ごとにコマンドレットが複数回ヘルプをダウンロードできないように Save-Help する規則をオーバーライドする Force パラメーターを指定します。

Force パラメーターは、1 GB の制限をオーバーライドし、バージョン チェックを回避します。 したがって、バージョンが移行先フォルダーのバージョンより後でない場合でも、ファイルをダウンロードできます。

コマンドは、 コマンドレットを Save-Help 使用して、ヘルプ ファイルをダウンロードし、指定したフォルダーに保存します。 Force パラメーターは、コマンドを毎日複数回実行Save-Helpする必要がある場合に必要です。

パラメーター

-Credential

ユーザー資格情報を指定します。 このコマンドレットは、 DestinationPath パラメーターで指定されたファイル システムの場所にアクセスするアクセス許可を持つユーザーの資格情報を使用してコマンドを実行します。 このパラメーターは、 DestinationPath または LiteralPath パラメーターがコマンドで使用されている場合にのみ有効です。

このパラメーターを使用すると、リモート コンピューターで DestinationPath パラメーターを使用するコマンドを実行Save-Helpできます。 明示的な資格情報を指定することで、リモート コンピューターで コマンドを実行し、アクセス拒否エラーが発生したり、CredSSP 認証を使用して資格情報を委任したりすることなく、3 台目のコンピューター上のファイル共有にアクセスできます。

User01 や Domain01\User01 などのユーザー名を入力するか、コマンドレットによって生成された PSCredential オブジェクトをGet-Credential入力します。 ユーザー名を入力すると、パスワードの入力を求められます。

資格情報は PSCredential オブジェクトに 格納され、パスワードは SecureString として格納されます。

注意

SecureString データ保護の詳細については、「SecureString のセキュリティ保護方法」を参照してください。

Type:PSCredential
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-DestinationPath

ヘルプ ファイルを保存するフォルダーのパスを指定します。 ファイル名やファイル名拡張子を指定しないでください。

Type:String[]
Aliases:Path
Position:0
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters: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

Type:SwitchParameter
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-FullyQualifiedModule

値には、モジュール名、完全なモジュール仕様、またはモジュール ファイルへのパスを指定できます。

値がパスの場合、パスは完全修飾または相対パスにすることができます。 相対パスは、using ステートメントを含むスクリプトを基準にして解決されます。

値が名前またはモジュールの指定である場合、PowerShell は PSModulePath で指定されたモジュールを検索します。

モジュール仕様は、次のキーを持つハッシュテーブルです。

  • ModuleName - 必須 モジュール名を指定します。
  • GUID - オプション モジュールの GUID を指定します。
  • また、以下の 3 つのキーのうち少なくとも 1 つを指定する 必要 もあります。
    • ModuleVersion - モジュールの最小許容バージョンを指定します。
    • MaximumVersion - モジュールの許容される最大バージョンを指定します。
    • RequiredVersion - モジュールの正確で必要なバージョンを指定します。 これは、他のバージョン キーでは使用できません。

Module パラメーターと同じコマンドで FullyQualifiedModule パラメーターを指定することはできません。 2 つのパラメーターは相互に排他的です。

Type:ModuleSpecification[]
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-LiteralPath

コピー先フォルダーのパスを指定します。 DestinationPath パラメーターの値とは異なり、LiteralPath パラメーターの値は、型指定されたとおりに使用されます。 ワイルドカードとして解釈される文字はありません。 パスにエスケープ文字が含まれている場合は、単一引用符で囲みます。 単一引用符は、文字をエスケープ シーケンスとして解釈しないように PowerShell に指示します。

Type:String[]
Aliases:PSPath, LP
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-Module

このコマンドレットがヘルプをダウンロードするモジュールを指定します。 コンマ区切りリストまたは各行に 1 つのモジュール名を持つファイルに、1 つ以上のモジュール名または名前パッターを入力します。 ワイルドカード文字を使用できます。 コマンドレットSave-Helpから にモジュール オブジェクトをGet-Moduleパイプすることもできます。

既定では、 Save-Help 更新可能なヘルプをサポートし、 PSModulePath 環境変数に一覧表示されている場所のローカル コンピューターにインストールされているすべてのモジュールのヘルプをダウンロードします。

コンピューターにインストールされていないモジュールのヘルプを保存するには、リモート コンピューターでコマンドを Get-Module 実行します。 次に、結果のモジュール オブジェクトをSave-Helpコマンドレットにパイプするか、Module または InputObject パラメーターの値としてモジュール オブジェクトを送信します。

指定したモジュールがコンピューターにインストールされている場合は、モジュール名またはモジュール オブジェクトを入力できます。 モジュールがコンピューターにインストールされていない場合は、コマンドレットによって返されるモジュール オブジェクトなど、モジュール オブジェクトを入力する Get-Module 必要があります。

コマンドレットの Save-HelpModule パラメーターは、モジュール ファイルまたはモジュール マニフェスト ファイルの完全なパスを受け入れません。 PSModulePath の場所にないモジュールのヘルプを保存するには、コマンドを実行する前に、モジュールを現在のセッションにSave-Helpインポートします。

値 "*" (すべて) は、コンピューターにインストールされているすべてのモジュールのヘルプの更新を試みます。 これには、更新可能なヘルプをサポートしていないモジュールが含まれます。 この値は、更新可能なヘルプをサポートしていないモジュールがコマンドで検出されたときにエラーが発生する可能性があります。

Type:PSModuleInfo[]
Aliases:Name
Position:1
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:True

-Scope

このパラメーターは、このコマンドレットでは何も行いません。

Type:UpdateHelpScope
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-UICulture

このコマンドレットが更新されたヘルプ ファイルを取得する UI カルチャ値を指定します。 、カルチャ オブジェクトを含む変数、または または コマンドなどのes-ESカルチャ オブジェクトを取得するコマンドなど、1 つ以上の言語コードをGet-CultureGet-UICulture入力します。

ワイルドカード文字は使用できません。 "de" などの部分的な言語コードを指定しないでください。

既定では、 は、 Save-Help Windows またはそのフォールバック カルチャ用に設定された UI カルチャ内のヘルプ ファイルを取得します。 UICulture パラメーターを指定した場合は、Save-Helpフォールバック カルチャではなく、指定した UI カルチャについてのみヘルプを検索します。

Type:CultureInfo[]
Position:2
Default value:Current UI culture
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-UseDefaultCredentials

このコマンドレットが、現在のユーザーの資格情報を使用して、Web ダウンロードを含むコマンドを実行することを示します。 既定では、コマンドは明示的な資格情報がない状態で実行されます。

このパラメーターは、Web ダウンロードが、NTLM、Negotiate、または Kerberos ベース認証を使用する場合に限り有効です。

Type:SwitchParameter
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

入力

PSModuleInfo

モジュール オブジェクトをこのコマンドレットにパイプできます。

出力

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 スナップインがサポートされます。他のスナップインはサポートされていません。
  • コマンドレットと Save-Help コマンドレットはUpdate-Help、ヘルプ ファイルをダウンロードするために次のポートを使用します。HTTP の場合はポート 80、HTTPS の場合はポート 443 です。
  • Update-Helpおよび Save-Help コマンドレットは、Windows プレインストール環境 (Windows PE) ではサポートされていません。