PowerShell Cmdlet - Test-ModuleManifest
 記事記号:[mh1918] 初版:2011/Sep/30

この文書は、Windows PowerShellのヘルプ機能で表示される内容を再構成したものです。

名前
    Test-ModuleManifest
    
概要
    モジュール マニフェスト ファイルにモジュールの内容が正確に記述されていること
    を確認します。
    
構文
    Test-ModuleManifest [-Path] <string> [<CommonParameters>]
        
説明
    Test-ModuleManifest コマンドレットは、モジュール マニフェスト (.psd1) ファイ
    ルに示されているファイルが、指定されたパスに実際に存在することを確認します。
    
    このコマンドレットは、モジュール作成者がマニフェスト ファイルをテストすると
    きに役立つように設計されています。モジュール ユーザーも、このコマンドレット
    をスクリプトおよびコマンドで使用して、モジュールに依存するスクリプトを実行す
    る前にエラーを検出できます。
    
    Test-ModuleManifest コマンドレットは、モジュールを表すオブジェクト (Get-Modu
    le によって返されるオブジェクトと同じ型) を返します。また、マニフェストで指
    定された場所に存在しないファイルがある場合、見つからなかったファイルごとにエ
    ラーも生成します。
    
パラメーター
    -Path <string>
        モジュール マニフェスト ファイルのパスを指定します。パス (省略可能) と、
        .psd1 というファイル名拡張子を持つモジュール マニフェスト ファイルの名前
        を入力します。既定の場所は現在のディレクトリです。このパラメーターは必須
        です。パラメーター名 ("Path") は省略可能です。パイプを使用して Test-Modu
        leManifest にパスを渡すこともできます。
        
        必須                         true
        位置                         1
        既定値                       なし
        パイプライン入力を許可する   true (ByValue, ByPropertyName)
        ワイルドカード文字を許可する false
        
    <CommonParameters>
        このコマンドレットは、次の共通パラメーターをサポートします: Verbose、
        Debug、ErrorAction、ErrorVariable、WarningAction、WarningVariable、
        OutBuffer、および OutVariable。詳細については、
        「get-help about_commonparameters」と入力してヘルプを参照してください。
    
入力
    System.String
        パイプを使用して、モジュール マニフェストのパスを Test-ModuleManifest に
        渡すことができます。
    
出力
    System.Management.Automation.PSModuleInfo
        Test-ModuleManifest は、モジュールを表す PSModuleInfo オブジェクトを返し
        ます。マニフェストにエラーが含まれる場合も、このオブジェクトは返されます。
    
メモ
    -------------------------- 例 1 --------------------------
    
    C:\PS>test-ModuleManifest -path $pshome\Modules\TestModule.psd1
    
    説明
    -----------
    このコマンドは、TestModule.psd1 モジュール マニフェストをテストします。
    
    -------------------------- 例 2 --------------------------
    
    C:\PS>"$pshome\Modules\TestModule.psd1" | test-modulemanifest
    
    Test-ModuleManifest : The specified type data file 'C:\Windows\System32\Wi
    ndowsPowerShell\v1.0\Modules\TestModule\TestTypes.ps1xml' could not be pro
    cessed because the file was not found. Please correct the path and try aga
    in.
    At line:1 char:34
    + "$pshome\Modules\TestModule.psd1" | test-modulemanifest <<<<
        + CategoryInfo          : ResourceUnavailable: (C:\Windows\System32\Win
    dowsPowerShell\v1.0\Modules\TestModule\TestTypes.ps1xml:String) [Test-Modul
    eManifest], FileNotFoundException
        + FullyQualifiedErrorId : Modules_TypeDataFileNotFound,Microsoft.
    PowerShell.Commands.TestModuleManifestCommandName
    
    
    Name              : TestModule
    Path              : C:\Windows\system32\WindowsPowerShell\v1.0\Modules\Test
    Module\TestModule.psd1
    Description       :
    Guid              : 6f0f1387-cd25-4902-b7b4-22cff6aefa7b
    Version           : 1.0
    ModuleBase        : C:\Windows\system32\WindowsPowerShell\v1.0\Modules\Test
    Module
    ModuleType        : Manifest
    PrivateData       :
    AccessMode        : ReadWrite
    ExportedAliases   : {}
    ExportedCmdlets   : {}
    ExportedFunctions : {}
    ExportedVariables : {}
    NestedModules     : {}
    
    説明
    -----------
    このコマンドは、パイプライン演算子 (|) を使用してパス文字列を Test-ModuleMan
    ifest に送信します。
    
    コマンドの出力には、マニフェストに示されている TestTypes.ps1xml ファイルが見
    つからなかったためにテストに不合格になったことが示されます。
    
    -------------------------- 例 3 --------------------------
    
    C:\PS>function Bool-ModuleManifest ($path)
        {$a = dir $path | test-modulemanifest -erroraction SilentlyContinue; $?}
    
    説明
    -----------
    この関数は Test-ModuleManifest に似ていますが、マニフェストがテストに合格し
    た場合はブール値の "True"、不合格になった場合は "False" を返します。
    
    この関数は、Get-ChildItem コマンドレット (エイリアスは dir) を使用して、$pat
    h 変数により指定されたモジュール マニフェストを取得します。さらにパイプライ
    ン演算子 (|) を使用して、ファイル オブジェクトを Test-ModuleManifest コマン
    ドレットに渡しています。
    
    Test-ModuleManifest コマンドは、ErrorAction 共通パラメーターを使用して Silen
    tlyContinue という値を指定し、コマンドによって生成されるエラーが表示されない
    ようにします。また、Test-ModuleManifest によって返される PSModuleInfo オブジ
    ェクトを $a 変数に保存します。そのため、オブジェクトは表示されません。
    
    次に、別のコマンド (セミコロン [;] はコマンド セパレーター) で $? 自動変数の
    値を表示します。この変数は、前のコマンドがエラーを生成しなかった場合は "True"、
    エラーを生成した場合は "False" を返します。
    
    この関数は、Import-Module コマンド、またはモジュールを使用するコマンドの前に
    ある可能性がある条件ステートメントなどで使用できます。
    
関連するリンク
    Online version: http://go.microsoft.com/fwlink/?LinkID=141557
    Import-Module 
    Get-Module 
    New-Module 
    Remove-Module 
    Export-ModuleMember 
    New-ModuleManifest 
    about_Modules 
    	
記事で解説しているパソコンの環境
 基本ソフト: Windows 7
 キーワード: Windows PowerShell、ヘルプ、Cmdlet、Test-ModuleManifest
ご利用数: 1973234
感想・要望・問い合わせは こちら