Find-Command

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

構文

Find-Command
    [[-Name] <String[]>]
    [-ModuleName <String>]
    [-MinimumVersion <String>]
    [-MaximumVersion <String>]
    [-RequiredVersion <String>]
    [-AllVersions]
    [-AllowPrerelease]
    [-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送信できます。 コマンドが複数のモジュールに含まれている場合は、コマンドレット ModuleName パラメーターをFind-Command使用します。 それ以外の場合は、インストールしたくないモジュールがインストールされている可能性があります。

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-TargetResourceRepository パラメーターは 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 コンソールに状態出力が表示されます。 詳細出力は、トラブルシューティングに役立ちます。

パラメーター

-AllowPrerelease

結果にプレリリースとしてマークされたモジュールが含まれます。

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-AllVersions

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

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Filter

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

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-MaximumVersion

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

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-MinimumVersion

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

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ModuleName

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

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Name

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

Type:String[]
Position:0
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Proxy

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

Type:Uri
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-ProxyCredential

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

Type:PSCredential
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Repository

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

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-RequiredVersion

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

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Tag

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

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

出力

PSGetCommandInfo

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

メモ

重要

2020 年 4 月時点で、PowerShell ギャラリーでは、トランスポート層セキュリティ (TLS) バージョン 1.0 および 1.1 がサポートされなくなります。 TLS 1.2 以降を使用していない場合、PowerShell ギャラリーにアクセスしようとするとエラーが発生します。 次のコマンドを使用して、確実に TLS 1.2 を使用するようにします。

[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12

詳細については、PowerShell ブログのお知らせを参照してください。