ja-JP/about_Updatable_Help.help.txt

TOPIC
    about_Updatable_Help

簡単な説明
    PowerShell の更新可能ヘルプシステムについて説明します。

詳細な説明
    PowerShell には、PowerShell のコマンドレットや概念に関する最新のヘルプ
    トピックにアクセスするための、いくつかの異なる方法が用意されています。

    PowerShell 3.0 で導入された更新可能ヘルプシステムは、コマンドラインで
    読めるように、常に最新のヘルプトピックがローカルコンピューターに存在する
    ことを保証するよう設計されています。これにより、ヘルプファイルのダウン
    ロードとインストール、および新しいヘルプファイルが利用可能になったときの
    更新が簡単になります。

    エンタープライズ内の複数のコンピューターや、インターネットにアクセス
    できないコンピューターに更新されたヘルプを提供するために、更新可能ヘルプ
    では、ヘルプファイルをファイルシステムのディレクトリやファイル共有に
    ダウンロードし、そのファイル共有からヘルプファイルをインストールできます。

    PowerShell 4.0 では、HelpInfoUri プロパティが Windows PowerShell リモート
    処理を通じて保持されます。これにより、リモートコンピューターにインストール
    されているがローカルコンピューターには必ずしもインストールされていない
    モジュールに対して、Save-Help が機能するようになります。インターネットに
    アクセスできないコンピューターで Export-Clixml を実行して PSModuleInfo
    オブジェクトをディスクやリムーバブルメディア(USB ドライブなど)に保存し、
    インターネットにアクセスできるコンピューターでその PSModuleInfo オブジェクト
    をインポートして、その PSModuleInfo オブジェクトに対して Save-Help を実行
    できます。保存したヘルプは、リムーバブルメディアを使ってリモートの未接続
    コンピューターにコピーし、Update-Help を実行してインストールできます。
    これらの Save-Help 機能の改善により、いかなる種類のネットワークアクセスも
    持たないコンピューターにヘルプをインストールできます。新しい Save-Help
    機能の使用例については、このトピックの「ファイル共有からヘルプを更新する
    方法」を参照してください。

    更新可能ヘルプは、コンピューターにヘルプファイルがない場合でも、最新の
    ヘルプトピックへのオンラインアクセスと、コマンドレットの基本的なヘルプも
    サポートします。

    PowerShell にはヘルプファイルが付属していません。更新可能ヘルプ機能を使って、
    PowerShell に既定で含まれているすべてのコマンドと、すべての Windows
    モジュールのヘルプファイルをインストールできます。

    更新可能ヘルプのコマンドレット

    - Update-Help: 最新のヘルプファイルをインターネットまたはファイル共有から
      ダウンロードし、ローカルコンピューターにインストールします。

    - Save-Help: 最新のヘルプファイルをインターネットからダウンロードし、
      ファイルシステムのディレクトリやファイル共有に保存します。コンピューター
      にヘルプファイルをインストールするには、Update-Help を使用します。

    - Get-Help: コマンドラインでヘルプトピックを表示します。コンピューター上の
      ヘルプファイルからヘルプを取得します。ヘルプファイルがないコマンドレット
      や関数に対しては、自動生成されたヘルプを表示します。コマンドレット、関数、
      スクリプト、ワークフローのオンラインヘルプトピックを、既定のインター
      ネットブラウザーで開きます。

    自動生成ヘルプ: ヘルプファイルなしのヘルプ

    コマンドレット、関数、ワークフローのヘルプファイルがコンピューターに
    ない場合、Get-Help コマンドレットは自動生成されたヘルプを表示し、ヘルプ
    ファイルのダウンロードまたはオンラインでの閲覧を促します。

    自動生成ヘルプには、構文とエイリアス、そして更新可能ヘルプのコマンドレット
    の使い方とオンラインヘルプトピックへのアクセス方法を説明する注釈が含まれて
    います。

    たとえば、次のコマンドは Get-Culture コマンドレットの基本的なヘルプを取得
    します。出力は、コンピューターにヘルプファイルがない場合の Get-Help の
    表示を示しています。

        Get-Help Get-Culture

        NAME
            Get-Culture

        SYNTAX
            Get-Culture [<CommonParameters>]

        ALIASES
            None

        REMARKS
            To get the latest Help content including descriptions and examples
            type: Update-Help.

    モジュールのヘルプファイル

    更新可能ヘルプの最小単位は、モジュールに対するヘルプです。モジュールの
    ヘルプには、モジュール内のすべてのコマンドレット、関数、ワークフロー、
    プロバイダー、スクリプト、概念に対するヘルプが含まれます。コンピューター
    にインストールされているすべてのモジュールのヘルプを、現在のセッションに
    インポートされていなくても更新できます。

    モジュール全体のヘルプを更新できますが、個々のコマンドレットのヘルプを
    更新することはできません。

    特定のコマンドレットを含むモジュールを見つけるには、次のコマンド形式を
    使用します。

        (Get-Command <cmdlet-name>).ModuleName

    たとえば、Set-ExecutionPolicy コマンドレットを含むモジュールを見つけるには、
    次のように入力します。

        (Get-Command Set-ExecutionPolicy).ModuleName

    特定のモジュールのヘルプを更新するには、次のように入力します。

        Update-Help -Module <ModuleName>

    たとえば、Set-ExecutionPolicy コマンドレットを含むモジュールのヘルプを
    更新するには、次のように入力します。

        Update-Help -Module Microsoft.PowerShell.Security

    更新可能ヘルプのアクセス許可

    $PSHOME/Modules ディレクトリ内のモジュールのヘルプを更新するには、その
    コンピューターの Administrators グループのメンバーである必要があります。

    Administrators グループのメンバーでない場合、これらのモジュールのヘルプを
    更新することはできません。ただし、インターネットアクセスがあれば、オンライン
    でヘルプを閲覧できます。

    $HOME/Documents/PowerShell/Modules ディレクトリ内のモジュール、または
    $HOME ディレクトリの他のサブディレクトリ内のモジュールのヘルプの更新には、
    特別なアクセス許可は不要です。

    Update-Help および Save-Help コマンドレットには、現在のユーザーの明示的な
    資格情報を提供する UseDefaultCredentials パラメーターがあります。この
    パラメーターは、セキュリティで保護されたインターネット上の場所にアクセス
    するために設計されています。

    Update-Help および Save-Help コマンドレットには、リモートコンピューターで
    コマンドを実行し、3 台目のコンピューター上のファイル共有にアクセスできる
    ようにする Credential パラメーターもあります。Credential パラメーターは、
    Update-Help の SourcePath または LiteralPath パラメーター、および Save-Help
    の DestinationPath または LiteralPath パラメーターを使用する場合にのみ有効
    です。

    ヘルプファイルをインストールおよび更新する方法

    ヘルプファイルを初めてダウンロードしてインストールするには、または
    コンピューター上のヘルプファイルを更新するには、Update-Help コマンドレット
    を使用します。

    Update-Help コマンドレットは、次のタスクを含むすべての面倒な作業を代行
    します。

    - どのモジュールが更新可能ヘルプをサポートしているかを判別します。
    - 各モジュールが更新可能ヘルプファイルを格納しているインターネット上の
      場所を見つけます。
    - コンピューター上の各モジュールのヘルプファイルを、各モジュールで利用
      可能な最新のヘルプファイルと比較します。
    - 新しいファイルをインターネットからダウンロードします。
    - ヘルプファイルパッケージを展開します。
    - ファイルが有効なヘルプファイルであることを検証します。
    - ヘルプファイルを、モジュールディレクトリの言語固有のサブディレクトリに
      インストールします。

    新しいヘルプトピックにアクセスするには、Get-Help コマンドレットを使用
    します。PowerShell を再起動する必要はありません。

    更新可能ヘルプをサポートするコンピューター上のすべてのモジュールに対して
    ヘルプをインストールまたは更新するには、次のように入力します。

        Update-Help

    特定のモジュールのヘルプを更新するには、Update-Help の Module パラメーター
    を追加します。モジュール名にはワイルドカード文字を使用できます。

    たとえば、ServerManager モジュールのヘルプを更新するには、次のように入力
    します。

        Update-Help -Module ServerManager

    パラメーターを指定しない場合、Update-Help はセッション内のすべてのモジュール
    と、更新可能ヘルプをサポートするすべてのインストール済みモジュールのヘルプ
    を更新します。対象となるには、モジュールが PSModulePath 環境変数の値に
    列挙されたディレクトリにインストールされている必要があります。これらは、
    Get-Module -ListAvailable コマンドによって返されるモジュールでもあります。

    Module パラメーターの値が *(すべて)の場合、Update-Help は、更新可能
    ヘルプをサポートしないモジュールを含む、すべてのインストール済みモジュール
    のヘルプを更新しようとします。このコマンドは、更新可能ヘルプをサポートしない
    モジュールに遭遇するため、通常は多くのエラーを生成します。

    ファイル共有からヘルプを更新する方法

    インターネットに接続されていないコンピューターをサポートするため、または
    エンタープライズ内でヘルプの更新を制御や効率化するために、Save-Help
    コマンドレットを使用します。Save-Help コマンドレットは、ヘルプファイルを
    インターネットからダウンロードし、指定したファイルシステムのディレクトリに
    保存します。

    Save-Help は、指定したディレクトリ内のヘルプファイルを、各モジュールで
    利用可能な最新のヘルプファイルと比較します。ディレクトリにヘルプファイルが
    ない場合や、モジュールに対してより新しいヘルプファイルが利用可能な場合、
    Save-Help コマンドレットは新しいファイルをインターネットからダウンロード
    します。ただし、ヘルプファイルの展開やインストールは行いません。

    ファイルシステムのディレクトリに保存されたヘルプファイルから、コンピューター
    上のヘルプファイルをインストールまたは更新するには、Update-Help コマンド
    レットの SourcePath パラメーターを使用します。Update-Help コマンドレットは、
    最新のヘルプファイルを特定し、それらを展開して検証し、モジュールディレクトリ
    の言語固有のサブディレクトリにインストールします。

    たとえば、インストール済みのすべてのモジュールのヘルプを \\Server\Share
    ディレクトリに保存するには、次のように入力します。

        Save-Help -DestinationPath \\Server\Share

    次に、\\Server\Share ディレクトリからヘルプを更新するには、次のように
    入力します。

        Update-Help -SourcePath \\Server\Share

    次の例は、ローカルコンピューターにインストールされていないモジュールに
    対してヘルプを保存する Save-Help の使用方法を示しています。この例では、
    管理者がインターネットに接続されたクライアントコンピューターから、ローカル
    コンピューターに DhcpServer モジュールや DHCP サーバーの役割をインストール
    することなく、Save-Help を実行して DhcpServer モジュールのヘルプを保存
    します。

    オプション 1: Invoke-Command を実行してリモートモジュールの PSModuleInfo
    オブジェクトを取得し、それを変数 $m に保存して、変数 $m をモジュール名と
    して指定することで、PSModuleInfo オブジェクトに対して Save-Help を実行
    します。

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

    オプション 2: DHCP サーバーモジュールを実行しているコンピューターを対象と
    した PSSession を開いてモジュールの PSModuleInfo オブジェクトを取得し、
    それを変数 $m に保存して、$m 変数に保存されたオブジェクトに対して
    Save-Help を実行します。

        $s = New-PSSession -ComputerName RemoteServer
        $m = Get-Module -PSSession $s -Name DhcpServer -ListAvailable
        Save-Help -Module $m -DestinationPath C:\SavedHelp

    オプション 3: DHCP サーバーモジュールを実行しているコンピューターを対象と
    した CIM セッションを開いてモジュールの PSModuleInfo オブジェクトを取得し、
    それを変数 $m に保存して、$m 変数に保存されたオブジェクトに対して
    Save-Help を実行します。

        $c = New-CimSession -ComputerName RemoteServer
        $m = Get-Module -CimSession $c -Name DhcpServer -ListAvailable
        Save-Help -Module $m -DestinationPath C:\SavedHelp

    次の例では、管理者がネットワークアクセスのないコンピューターに DHCP
    サーバーモジュールのヘルプをインストールします。

    まず、Export-Clixml を実行して、PSModuleInfo オブジェクトを共有フォルダー
    またはリムーバブルメディアにエクスポートします。

        $m = Get-Module -Name DhcpServer -ListAvailable
        Export-Clixml -Path E:\UsbDrive\DhcpModule.xml -InputObject $m

    次に、リムーバブルメディアをインターネットアクセスのあるコンピューターに
    運び、Import-Clixml を使って PSModuleInfo オブジェクトをインポートします。
    Save-Help を実行して、インポートした DhcpServer モジュールの PSModuleInfo
    オブジェクトのヘルプを保存します。

        $deserialized_m = Import-Clixml E:\UsbDrive\DhcpModule.xml
        Save-Help -Module $deserialized_m -DestinationPath E:\UsbDrive\SavedHelp

    最後に、リムーバブルメディアをネットワークアクセスのないコンピューターに
    戻し、Update-Help を実行してヘルプをインストールします。

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

    パラメーターを指定しない場合、Save-Help はセッション内のすべてのモジュール
    と、更新可能ヘルプをサポートするすべてのインストール済みモジュールのヘルプ
    をダウンロードします。対象となるには、モジュールが、ローカルコンピューター
    上、またはヘルプを保存したいリモートコンピューター上のいずれかで、
    $Env:PSModulePath 環境変数の値に列挙されたディレクトリにインストールされて
    いる必要があります。これらは、Get-Help -ListAvailable コマンドを実行する
    ことで返されるモジュールでもあります。

    さまざまな言語のヘルプファイルを更新する方法

    既定では、Update-Help および Save-Help コマンドレットは、ローカルコンピュー
    ターの Windows に設定された UI カルチャと言語でヘルプをダウンロードします。
    指定したモジュールのヘルプファイルがローカルの UI カルチャで利用できない
    場合、Update-Help と Save-Help は Windows の言語フォールバック規則を使って、
    最適なサポート言語を見つけます。

    ただし、Update-Help および Save-Help コマンドレットの UICulture パラメーター
    を使って、利用可能な任意の UI カルチャでヘルプファイルをダウンロードして
    インストールできます。

    たとえば、セッション上のすべてのモジュールの最新ヘルプファイルを日本語
    (ja-JP) とフランス語 (fr-FR) で保存するには、次のように入力します。

        Save-Help -Path \Server\Share -UICulture ja-JP, fr-FR

    指定した言語でモジュールのヘルプファイルが利用できない場合、Update-Help
    および Save-Help コマンドレットは、各モジュールのヘルプが利用可能な言語を
    列挙したエラーメッセージを返します。これにより、ニーズに最も合った代替案を
    選択できます。

    注: 現在、更新可能ヘルプのコンテンツは英語 (en-US) でのみ公開されています。

    オンラインヘルプの使用方法

    ローカルコンピューター上のヘルプファイルを更新できない、または更新しない
    ことを選択した場合でも、最新のヘルプファイルをオンラインで取得できます。

    任意のコマンドレットや関数のオンラインヘルプトピックを開くには、Get-Help
    コマンドレットの Online パラメーターを使用します。

    たとえば、次のコマンドは Get-Job コマンドレットのオンラインヘルプトピックを
    既定のインターネットブラウザーで開きます。

        Get-Help Get-Job -Online

    スクリプトのオンラインヘルプを取得するには、Online パラメーターとスクリプト
    への完全パスを使用します。

    Online パラメーターは About トピックでは機能しません。PowerShell 言語に
    関するヘルプトピックを含む PowerShell の about トピックを参照するには、
    PowerShell About Topics を参照してください。

    インターネットからのダウンロードを最小化または防止する方法

    インターネットからのダウンロードを最小化し、インターネットに接続されて
    いないユーザーに更新可能ヘルプを提供するには、Save-Help コマンドレットを
    使用します。ヘルプをインターネットからダウンロードしてネットワーク共有に
    保存します。次に、すべてのコンピューターで Update-Help コマンドを実行する
    グループポリシー設定またはスケジュールされたジョブを作成します。Update-Help
    コマンドレットの SourcePath パラメーターの値をネットワーク共有に設定します。

    インターネットアクセスのあるユーザーが更新可能ヘルプをインターネットから
    ダウンロードするのを防ぐには、「Update-Help の既定のソースパスを設定する」
    グループポリシー設定を使用します。

    このグループポリシー設定は、指定したファイルシステムの場所を SourcePath
    パラメーターとして、影響を受けるすべてのコンピューター上のすべての
    Update-Help コマンドに暗黙的に追加します。ユーザーは SourcePath パラメーター
    を明示的に使って別のファイルシステムの場所を指定できますが、SourcePath
    パラメーターを除外してインターネットからヘルプをダウンロードすることは
    できません。

    注:「Update-Help の既定のソースパスを設定する」グループポリシー設定は、
    [コンピューターの構成] と [ユーザーの構成] の下に表示されます。ただし、
    有効なのは [コンピューターの構成] の下のポリシー設定だけです。[ユーザーの
    構成] の下のポリシー設定は無視されます。

    詳細については、about_Group_Policy_Settings を参照してください。

    非標準のモジュールのヘルプを更新する方法

    Get-Module コマンドレットの ListAvailable パラメーターで返されないモジュール
    のヘルプを更新または保存するには、Update-Help または Save-Help コマンドを
    実行する前に、そのモジュールを現在のセッションにインポートします。リモート
    コンピューターでは、Save-Help コマンドを実行する前に、リモートコンピューター
    に接続された現在のセッション、または Invoke-Command スクリプトブロックに
    モジュールをインポートします。

    モジュールが現在のセッションにある状態で、Update-Help または Save-Help
    コマンドレットをパラメーターなしで実行するか、Module パラメーターを使って
    モジュール名を指定します。

    Update-Help および Save-Help コマンドレットの Module パラメーターは、
    モジュール名のみを受け付けます。モジュールファイルへのパスは受け付けません。

    この手法を使って、Get-Module コマンドレットの ListAvailable パラメーターで
    返されない任意のモジュールのヘルプを更新または保存します。たとえば、
    $Env:PSModulePath 環境変数に列挙されていない場所にインストールされている
    モジュールや、正しく構成されていないモジュール(モジュールディレクトリに、
    ディレクトリ名と同じベース名を持つファイルが少なくとも 1 つ含まれていない
    モジュール)などです。

    更新可能ヘルプをサポートする方法

    モジュールを作成する場合、自分のモジュールに対してオンラインヘルプと更新
    可能ヘルプをサポートできます。詳細については、Supporting Updatable Help
    および Supporting Online Help を参照してください。

    更新可能ヘルプは、PowerShell スナップインやコメントベースのヘルプでは利用
    できません。

    注釈

    Update-Help および Save-Help コマンドレットは、Windows プレインストール
    環境 (Windows PE) ではサポートされていません。

関連項目
    Get-Help
    Save-Help
    Update-Help

----
原文: PowerShell-Docs (CC BY 4.0) の翻訳 / PSHelpJaJP