次の方法で共有


Find-Command

モジュール内の PowerShell コマンドを検索します。

構文

Find-Command
    [[-Name] <String[]>]
    [-ModuleName <String>]
    [-MinimumVersion <Version>]
    [-MaximumVersion <Version>]
    [-RequiredVersion <Version>]
    [-AllVersions]
    [-Tag <String[]>]
    [-Filter <String>]
    [-Proxy <Uri>]
    [-ProxyCredential <PSCredential>]
    [-Repository <String[]>]
    [<CommonParameters>]

説明

Find-Command コマンドレットは、コマンドレット、エイリアス、関数、ワークフローなどの PowerShell コマンドを検索します。 Find-Command は、登録済みリポジトリ内のモジュールを検索します。

Find-Commandによって検出された各コマンドについて、PSGetCommandInfo オブジェクトが返されます。 PSGetCommandInfo オブジェクトは、パイプラインをInstall-Moduleコマンドレットに送信できます。 Install-Module は、コマンドを含むモジュールをインストールします。

例 1: 指定したリポジトリ内のすべてのコマンドを検索する

Find-Command コマンドレットは、登録済みのリポジトリでモジュールを検索します。

Find-Command -Repository PSGallery | Select-Object -First 10

Name                                Version    ModuleName          Repository
----                                -------    ----------          ----------
Disable-AzureRmDataCollection       5.8.3      AzureRM.profile     PSGallery
Disable-AzureRmContextAutosave      5.8.3      AzureRM.profile     PSGallery
Enable-AzureRmDataCollection        5.8.3      AzureRM.profile     PSGallery
Enable-AzureRmContextAutosave       5.8.3      AzureRM.profile     PSGallery
Remove-AzureRmEnvironment           5.8.3      AzureRM.profile     PSGallery
Get-AzureRmEnvironment              5.8.3      AzureRM.profile     PSGallery
Set-AzureRmEnvironment              5.8.3      AzureRM.profile     PSGallery
Add-AzureRmEnvironment              5.8.3      AzureRM.profile     PSGallery
Get-AzureRmSubscription             5.8.3      AzureRM.profile     PSGallery
Connect-AzureRmAccount              5.8.3      AzureRM.profile     PSGallery

Find-Command では、 Repository パラメーターを使用して登録済みリポジトリの名前を指定します。 オブジェクトはパイプラインに送信されます。 Select-Object はオブジェクトを受け取り、 First パラメーターを使用して最初の 10 件の結果を表示します。

例 2: 名前でコマンドを検索する

Find-Command では、コマンドの名前を使用して、リポジトリ内のモジュールを検索できます。 コマンド名が複数の ModuleName に存在する可能性があります。

Find-Command -Repository PSGallery -Name Get-TargetResource

Name                  Version    ModuleName                      Repository
----                  -------    ----------                      ----------
Get-TargetResource    3.1.0.0    xPowerShellExecutionPolicy      PSGallery
Get-TargetResource    1.0.0      xInternetExplorerHomePage       PSGallery
Get-TargetResource    1.2.0.0    SystemLocaleDsc                 PSGallery

Find-Command では、 Repository パラメーターを使用して PSGallery を検索します。 Name パラメーターは、コマンド Get-TargetResource を指定します。

例 3: 名前でコマンドを検索し、モジュールをインストールする

Find-Command コマンドとモジュールを見つけて、オブジェクトを Install-Moduleに送信できます。 コマンドが複数のモジュールに含まれている場合は、 Find-Command コマンドレットの Module-Name パラメーターを使用します。 それ以外の場合は、インストールしたくないモジュールがインストールされている可能性があります。

PS> Find-Command -Name Get-TargetResource -Repository PSGallery -ModuleName SystemLocaleDsc |
    Install-Module

PS> Get-InstalledModule

Version   Name               Repository   Description
-------   ----               ----------   -----------
1.2.0.0   SystemLocaleDsc    PSGallery    This DSC Resource allows configuration of the Windows...

Find-Command Name パラメーターを使用して、コマンド Get-TargetResource を指定します。 Repository パラメーターは PSGallery を検索します。 ModuleName パラメーターは、インストールするモジュール SystemLocaleDsc を指定します。 オブジェクトはパイプラインから Install-Module に送信され、モジュールがインストールされます。 インストールが完了したら、 Get-InstalledModule を使用して結果を表示できます。

例 4: コマンドを見つけてモジュールを保存する

PS> Find-Command -Name Invoke-ScriptAnalyzer -Repository PSGallery | Save-Module -Path C:\Test\Modules -Verbose

VERBOSE: Downloading 'https://www.powershellgallery.com/api/v2/package/PSScriptAnalyzer/1.18.0'.
VERBOSE: Completed downloading 'https://www.powershellgallery.com/api/v2/package/PSScriptAnalyzer/1.18.0'.
VERBOSE: Completed downloading 'PSScriptAnalyzer'.
VERBOSE: Module 'PSScriptAnalyzer' was saved successfully to path 'C:\Test\Modules\PSScriptAnalyzer\1.18.0'.

Find-Command Name パラメータと Repository パラメータを使用して、PSGallery リポジトリで Invoke-ScriptAnalyzer コマンドを検索します。 オブジェクトはパイプラインを Save-Moduleに送信されます。 Path パラメーターは、モジュールを保存する場所を決定します。 Verbose は省略可能なパラメーターですが、PowerShell コンソールに状態出力が表示されます。 詳細出力は、トラブルシューティングに役立ちます。

パラメーター

-AllVersions

このコマンドレットがモジュールのすべてのバージョンを取得することを示します。

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

-Filter

PackageManagement プロバイダーの検索構文に基づいてモジュールを検索します。 たとえば、 ModuleName プロパティと Description プロパティ内で検索する単語を指定します。

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

-MaximumVersion

結果に含めるモジュールの最大バージョンを指定します。 MaximumVersion パラメーターと RequiredVersion パラメーターを同じコマンドで使用することはできません。

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

-MinimumVersion

結果に含めるモジュールの最小バージョンを指定します。 MinimumVersion パラメーターと RequiredVersion パラメーターは、同じコマンドでは使用できません。

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

-ModuleName

コマンドを検索するモジュールの名前を指定します。 既定値は、すべてのモジュールです。

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

-Name

リポジトリ内で検索するコマンド名を指定します。 コマンド名の配列を区切るには、コンマを使用します。

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

-Proxy

インターネット リソースへの直接接続ではなく、要求のプロキシ サーバーを指定します。

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

-ProxyCredential

Proxy パラメーターで指定されたプロキシ サーバーを使用するアクセス許可を持つユーザー アカウントを指定します。

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

-Repository

コマンドを検索するリポジトリを指定します。 リポジトリ名の配列を区切るには、コンマを使用します。 既定値は、すべてのリポジトリです。

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

-RequiredVersion

結果に含めるモジュールのバージョンを指定します。

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

-Tag

リポジトリ内のモジュールを分類するタグを指定します。 タグの配列を区切るには、コンマを使用します。

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

出力

PSGetCommandInfo

Find-Command は PSGetCommandInfo オブジェクトを出力します。