次の方法で共有


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 で導入されました。

Windows PowerShell 4.0 以降では、 Save-Help を使用して、リモート コンピューターにインストールされているモジュールのヘルプ ファイルをダウンロードできます。 インターネットにアクセスできないコンピューターにを使用して Export-Clixml オブジェクトを保存し、インターネットにアクセスできるコンピューターにオブジェクトをインポートしてから、Save-Help オブジェクトで実行することもできます。 保存したヘルプをリモート コンピューターにコピーし、 Update-Helpを実行してインストールできます。 このプロセスを使用して、ネットワーク アクセス権のないコンピューターにヘルプをインストールできます。

パラメーターがない場合、 Save-Help コマンドは、セッション内のすべてのモジュールと、 PSModulePath 環境変数にリストされている場所にあるコンピューターにインストールされているモジュールに関する最新のヘルプをダウンロードします。 このアクションでは、警告なしで更新可能なヘルプをサポートしていないモジュールはスキップされます。

Save-Help コマンドレットは、移動先フォルダー内のヘルプ ファイルのバージョンを確認します。 新しいヘルプ ファイルが使用可能な場合、このコマンドレットは最新のヘルプ ファイルをインターネットからダウンロードし、フォルダーに保存します。 Save-Help コマンドレットは、ヘルプ ファイルを抽出してコンピューターにインストールするのではなく、ダウンロードしたコンテンツを保存する点を除いて、Update-Help コマンドレットと同じように動作します。

各モジュールの保存されたヘルプは、1 つのヘルプ情報 (HelpInfo XML) ファイルと、各言語のヘルプ ファイルのキャビネットまたは ZIP アーカイブ (.cab または .zip) で構成されます。 Windows では、コマンドによってキャビネット ファイルがダウンロードされます。 Linux および macOS では、コマンドによって ZIP ファイルがダウンロードされます。

モジュールのヘルプ ファイルを PowerShell インストール フォルダー ($PSHOME\Modules) に保存するには、[ 管理者として実行] オプションを使用して PowerShell を起動します。 これらのモジュールのヘルプ ファイルをダウンロードするには、コンピューターの Administrators グループのメンバーである必要があります。

保存したヘルプ ファイルをインストールするには、Update-Help パラメーターを指定してを実行し、保存されたヘルプ ファイルを含むフォルダーを指定します。 Update-Help は、アーカイブからヘルプ ファイルを抽出し、適切な場所にインストールします。

例 1: DhcpServer モジュールのヘルプを保存する

この例では、 Save-Help を使用して、 DhcpServer モジュールまたは DHCP サーバーの役割をローカル コンピューターにインストールせずに、インターネットに接続されたクライアント コンピューターから DhcpServer モジュールのヘルプを保存する 3 つの異なる方法を示します。

# Option 1:
# 1. Run Invoke-Command to get the PSModuleInfo object for the DhcpServer module,
# 2. Save-Help on the PSModuleInfo object to save the help files to a folder on
#    the local computer.

$mod = Invoke-Command -ComputerName RemoteServer -ScriptBlock {
    Get-Module -Name DhcpServer -ListAvailable
}
Save-Help -Module $mod -DestinationPath C:\SavedHelp


# Option 2:
# 1. Open a PSSession to the remote computer that's running the DhcpServer module
# 2. Get the PSModuleInfo object from the remote computer
# 3. Save-Help on the PSModuleInfo object

$session = New-PSSession -ComputerName "RemoteServer"
$mod = Get-Module -PSSession $session -Name "DhcpServer" -ListAvailable
Save-Help -Module $mod -DestinationPath C:\SavedHelp


# Option 3:
# 1. Open a CimSession to the remote computer that's running the DhcpServer module
# 2. Get the PSModuleInfo object from the remote computer
# 3. Save-Help on the PSModuleInfo object
$cimsession = New-CimSession -ComputerName "RemoteServer"
$mod = Get-Module -CimSession $cimsession -Name "DhcpServer" -ListAvailable
Save-Help -Module $mod -DestinationPath "C:\SavedHelp"

例 2: DhcpServer モジュールのヘルプをインストールする

この例では、ネットワークに接続されていないコンピューターのヘルプをインストールする方法を示します。 この例では、最初のコンピューターがアクセス可能なネットワークに接続されていません。 リムーバブル メディアを使用してファイルをコピーする必要があります。 2 台目のコンピューターはインターネットに接続されており、ヘルプ ファイルをダウンロードできます。

# On the first computer, get the PSModuleInfo object for the module and save it to
# removable media.

Get-Module -Name "DhcpServer" -ListAvailable |
    Export-CliXml -Path E:\UsbFlashDrive\DhcpModule.xml

# Move the removable media to a computer that has internet access, and then import the
# PSModuleInfo object. Run Save-Help on the imported PSModuleInfo object and save the help
# files to the removable media.

$moduleInfo = Import-CliXml E:\UsbFlashDrive\DhcpModule.xml
Save-Help -Module $moduleInfo -DestinationPath E:\UsbFlashDrive\SavedHelp

# Finally, move the removable media back to the first computer and install the help.

Update-Help -Module DhcpServer -SourcePath E:\UsbFlashDrive\SavedHelp

例 3: すべてのモジュールのヘルプを保存する

このコマンドは、ローカル コンピューター上のすべてのモジュールの最新のヘルプ ファイルをダウンロードします。 ヘルプ ファイルは、 \\Server01\Fileshare01 フォルダーに保存されます。

Save-Help -DestinationPath \\Server01\FileShare01

例 4: コンピューター上のモジュールのヘルプを保存する

このコマンドは、 ServerManager モジュールの最新のヘルプ ファイルをダウンロードし、 \\Server01\Fileshare01 フォルダーに保存します。

$saveHelpSplat = @{
    Module = 'ServerManager'
    DestinationPath = '\\Server01\FileShare01'
    Credential = 'Domain01/Admin01'
}
Save-Help @saveHelpSplat

モジュールがコンピューターにインストールされている場合、モジュールが現在のセッションにインポートされていない場合でも、モジュール名を Module パラメーターの値として入力できます。

このコマンドでは、 Credential パラメーターを使用して、ファイル共有に書き込むアクセス許可を持つユーザーの資格情報を指定します。

例 5: モジュールのヘルプを別のコンピューターに保存する

これらのコマンドは、 CustomSQL モジュールの最新のヘルプ ファイルをダウンロードし、 \\Server01\Fileshare01 フォルダーに保存します。

Invoke-Command -ComputerName Server02 { Get-Module -Name CustomSQL -ListAvailable } |
    Save-Help -DestinationPath \\Server01\FileShare01 -Credential Domain01\Admin01

CustomSQL モジュールはコンピューターにインストールされていないため、シーケンスには、Server02 コンピューターから CustomSQL モジュールのモジュール オブジェクトを取得し、モジュール オブジェクトを Invoke-Command コマンドレットにパイプするSave-Help コマンドが含まれています。

モジュールがコンピューターにインストールされていない場合、 Save-Help は最新のヘルプ ファイルの場所に関する情報を含むモジュール オブジェクトを必要とします。

例 6: モジュールのヘルプを複数の言語で保存する

このコマンドは、4 つの異なる UI カルチャのコア PowerShell モジュールのヘルプを保存します。 これらのロケールの言語パックをコンピューターにインストールする必要はありません。

$saveHelpSplat = @{
    Module = 'Microsoft.PowerShell*'
    UICulture = 'de-DE', 'en-US', 'fr-FR', 'ja-JP'
    DestinationPath = "D:\Help"
}
Save-Help @saveHelpSplat

Save-Help では、モジュール所有者が翻訳されたファイルをインターネット上で使用できるようにする場合にのみ、異なる UI カルチャのモジュールのヘルプ ファイルをダウンロードできます。

例 7: 1 日に 1 回以上ヘルプを保存する

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

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

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

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

パラメーター

-Credential

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

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

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

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

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 つを指定する必要
    • 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 パラメーターは、モジュール ファイルまたはモジュール マニフェスト ファイルの完全なパスを受け入れられません。 PSModulePath の場所にないモジュールのヘルプを保存するには、Save-Help コマンドを実行する前に、モジュールを現在のセッションにインポートします。

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

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

-Scope

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

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

-UICulture

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

既定では、Save-Help はオペレーティング システムまたはそのフォールバック カルチャの UI カルチャ セット内のヘルプ ファイルを取得します。 UICulture パラメーターを指定した場合、Save-Help は、指定した言語のヘルプのみを検索します。

PowerShell 7.4 以降では、en などの部分的な言語コードを使用して、任意のリージョンのヘルプを英語でダウンロードできます。

型:CultureInfo[]
配置:2
規定値:Current UI culture
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-UseDefaultCredentials

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

このパラメーターは、Web ダウンロードで NTLM、ネゴシエート、または Kerberos ベースの認証を使用する場合にのみ有効です。

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

入力

PSModuleInfo

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

出力

None

このコマンドレットは出力を返しません。

メモ

  • $PSHOME\Modules フォルダーにモジュールのヘルプを保存するには、[管理者として実行] オプションを使用して PowerShell を起動します。 コンピューター上の Administrators グループのメンバーのみが、$PSHOME\Modules フォルダー内のモジュールのヘルプをダウンロードできます。
  • 各モジュールの保存されたヘルプは、1 つのヘルプ情報 (HelpInfo XML) ファイルと、各 UI カルチャのヘルプ ファイル用の 1 つのキャビネット (.cab) ファイルで構成されます。 キャビネット ファイルからヘルプ ファイルを抽出する必要はありません。 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) ではサポートされていません。