モジュールが存在するかどうかを確認するために、次のことを試しました。
try {
Import-Module SomeModule
Write-Host "Module exists"
}
catch {
Write-Host "Module does not exist"
}
出力は次のとおりです。
Import-Module : The specified module 'SomeModule' was not loaded because no valid module file was found in any module directory.
At D:\keytalk\Software\Client\TestProjects\Export\test.ps1:2 char:5
+ Import-Module SomeModule
+ ~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : ResourceUnavailable: (SomeModule:String) [Import-Module], FileNotFoundException
+ FullyQualifiedErrorId : Modules_ModuleNotFound,Microsoft.PowerShell.Commands.ImportModuleCommand
Module exists
エラーが発生しますが、例外はスローされないためModule exists
、SomeModule
存在しませんが、最終的には表示されます。
PowerShellモジュールがシステムにインストールされているかどうかを検出するための良い方法はありますか(できればエラーを生成せずに)?