Sdílet prostřednictvím


Find-Command

Vyhledá příkazy PowerShellu v modulech.

Syntax

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>]

Description

Rutina Find-Command vyhledá příkazy PowerShellu, jako jsou rutiny, aliasy, funkce a pracovní postupy. Find-Command prohledává moduly v registrovaných úložištích.

Pro každý příkaz nalezený nástrojem Find-Commandse vrátí objekt PSGetCommandInfo . Objekt PSGetCommandInfo lze odeslat do kanálu do rutiny Install-Module . Install-Module nainstaluje modul, který obsahuje příkaz.

Příklady

Příklad 1: Vyhledání všech příkazů v zadaném úložišti

Rutina Find-Command vyhledá moduly v registrovaném úložišti.

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 použije parametr Repository k zadání názvu registrovaného úložiště. Objekty se odesílají v kanálu. Select-Object přijme objekty a použije parametr First k zobrazení prvních 10 výsledků.

Příklad 2: Vyhledání příkazu podle názvu

Find-Command může použít název příkazu k vyhledání modulu v úložišti. Je možné, že název příkazu existuje ve více ModuleNames.

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 použije parametr Repository k vyhledání PSGallery. Parametr Name určuje příkaz Get-TargetResource.

Příklad 3: Vyhledání příkazů podle názvu a instalace modulu

Find-Command může vyhledat příkaz a modul a pak odeslat objekt do Install-Module. Pokud je příkaz součástí více modulů, použijte Find-Command parametr Rutiny ModuleName . V opačném případě se můžou nainstalovat moduly, které jste nechtěli nainstalovat.

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 používá parametr Name k zadání příkazu Get-TargetResource. Parametr Repository vyhledá PSGallery. Parametr ModuleName určuje modul, který chcete nainstalovat, SystemLocaleDsc. Objekt se odešle do kanálu a Install-Module modul se nainstaluje. Po dokončení instalace můžete použít Get-InstalledModule k zobrazení výsledků.

Příklad 4: Vyhledání příkazu a uložení jeho modulu

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 pomocí parametrů Name a Repository vyhledá příkaz Invoke-ScriptAnalyzer v úložišti PSGallery . Objekt se odešle do kanálu .Save-Module Parametr Path určuje umístění pro uložení modulu. Verbose je volitelný parametr, ale zobrazuje výstup stavu v konzole PowerShellu. Podrobný výstup je vhodný pro řešení potíží.

Parametry

-AllowPrerelease

Zahrne do výsledků moduly označené jako předběžné verze.

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

-AllVersions

Označuje, že tato rutina získá všechny verze modulu.

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

-Filter

Vyhledá moduly založené na syntaxi vyhledávání zprostředkovatele PackageManagement . Zadejte například slova, která chcete vyhledat ve vlastnostech ModuleName a Description .

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

-MaximumVersion

Určuje maximální verzi modulu, která se má zahrnout do výsledků. Parametry MaximumVersion a RequiredVersion nelze použít ve stejném příkazu.

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

-MinimumVersion

Určuje minimální verzi modulu, která se má zahrnout do výsledků. Parametry MinimumVersion a RequiredVersion nelze použít ve stejném příkazu.

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

-ModuleName

Určuje název modulu, který má příkazy vyhledat. Výchozí hodnota jsou všechny moduly.

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

-Name

Určuje název příkazu, který se má vyhledat v úložišti. K oddělení pole názvů příkazů použijte čárky.

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

-Proxy

Určuje proxy server pro požadavek, nikoli přímé připojení k internetovému prostředku.

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

-ProxyCredential

Určuje uživatelský účet, který má oprávnění používat proxy server určený parametrem Proxy .

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

-Repository

Určuje úložiště, které má hledat příkazy. K oddělení pole názvů úložišť použijte čárky. Výchozí hodnota je všechna úložiště.

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

-RequiredVersion

Určuje verzi modulu, která se má zahrnout do výsledků.

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

-Tag

Určuje značky, které kategorizují moduly v úložišti. K oddělení pole značek použijte čárky.

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

Výstupy

PSGetCommandInfo

Find-Command výstup PSGetCommandInfo objekt.

Poznámky

Důležité

Od dubna 2020 už Galerie prostředí PowerShell nepodporuje protokol TLS (Transport Layer Security) verze 1.0 a 1.1. Pokud nepoužíváte protokol TLS 1.2 nebo vyšší, při pokusu o přístup k Galerie prostředí PowerShell se zobrazí chyba. Pomocí následujícího příkazu se ujistěte, že používáte protokol TLS 1.2:

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

Další informace najdete v oznámení na blogu o PowerShellu.