Find-Package
SYNOPSIS
Finds software packages in available package sources.
SYNTAX
NuGet
Find-Package [-IncludeDependencies] [-AllVersions] [-Source <String[]>] [-Credential <PSCredential>]
[-Proxy <Uri>] [-ProxyCredential <PSCredential>] [[-Name] <String[]>] [-RequiredVersion <String>]
[-MinimumVersion <String>] [-MaximumVersion <String>] [-Force] [-ForceBootstrap] [-ProviderName <String[]>]
[-ConfigFile <String>] [-SkipValidate] [-Headers <String[]>] [-FilterOnTag <String[]>] [-Contains <String>]
[-AllowPrereleaseVersions] [<CommonParameters>]
PowerShellGet
Find-Package [-IncludeDependencies] [-AllVersions] [-Source <String[]>] [-Credential <PSCredential>]
[-Proxy <Uri>] [-ProxyCredential <PSCredential>] [[-Name] <String[]>] [-RequiredVersion <String>]
[-MinimumVersion <String>] [-MaximumVersion <String>] [-Force] [-ForceBootstrap] [-ProviderName <String[]>]
[-AllowPrereleaseVersions] [-PackageManagementProvider <String>] [-PublishLocation <String>]
[-ScriptSourceLocation <String>] [-ScriptPublishLocation <String>] [-Type <String>] [-Filter <String>]
[-Tag <String[]>] [-Includes <String[]>] [-DscResource <String[]>] [-RoleCapability <String[]>]
[-Command <String[]>] [-AcceptLicense] [<CommonParameters>]
DESCRIPTION
`Find-Package` finds software packages that are available in package sources. `Get-PackageProvider` and `Get-PackageSource` display details about your providers.
EXAMPLES
Example 1: Find all available packages from a package provider
Find-Package -ProviderName NuGet
Name Version Source Summary
---- ------- ------ -------
NUnit 3.11.0 MyNuGet NUnit is a unit-testing framework for all .NET langua...
Newtonsoft.Json 12.0.1 MyNuGet Json.NET is a popular high-performance JSON framework...
EntityFramework 6.2.0 MyNuGet Entity Framework is Microsoft's recommended data acce...
MySql.Data 8.0.15 MyNuGet MySql.Data.MySqlClient .Net Core Class Library
bootstrap 4.3.1 MyNuGet Bootstrap framework in CSS. Includes fonts and JavaSc...
NuGet.Core 2.14.0 MyNuGet NuGet.Core is the core framework assembly for NuGet...
`Find-Package` uses the Provider parameter to specify the provider NuGet .
Example 2: Find a package from a package source
Find-Package -Name NuGet.Core -Source MyNuGet
Name Version Source Summary
---- ------- ------ -------
NuGet.Core 2.14.0 MyNuGet NuGet.Core is the core framework assembly for NuGet...
`Find-Package` uses the Name parameter to specify the package name NuGet.Core . The Source parameter specifies to search for the package in MyNuGet .
Example 3: Find all versions of a package
Find-Package -Name NuGet.Core -Source MyNuGet -AllVersions
Name Version Source Summary
---- ------- ------ -------
NuGet.Core 2.14.0 MyNuGet NuGet.Core is the core framework assembly for NuGet...
NuGet.Core 2.14.0-rtm-832 MyNuGet NuGet.Core is the core framework assembly for NuGet...
NuGet.Core 2.13.0 MyNuGet NuGet.Core is the core framework assembly for NuGet...
...
NuGet.Core 1.1.229.159 MyNuGet NuGet.Core is the core framework assembly for NuGet...
Nuget.Core 1.0.1120.104 MyNuGet NuGet.Core is the core framework assembly for NuGet...
`Find-Package` uses the Name parameter to specify the package NuGet.Core . The ProviderName parameter specifies to search for the package in MyNuGet . AllVersions specifies that all available versions are returned.
Example 4: Find a package with a specific name and version
Find-Package -Name NuGet.Core -ProviderName NuGet -RequiredVersion 2.9.0
Name Version Source Summary
---- ------- ------ -------
NuGet.Core 2.9.0 MyNuGet NuGet.Core is the core framework assembly for NuGet...
`Find-Package` uses the Name parameter to specify the package name NuGet.Core . The ProviderName parameter specifies to search for the package in NuGet . RequiredVersion specifies that only version 2.9.0 is returned.
Example 5: Find packages within a range of versions
Find-Package -Name NuGet.Core -ProviderName NuGet -MinimumVersion 2.7.0 -MaximumVersion 2.9.0 -AllVersions
Name Version Source Summary
---- ------- ------ -------
NuGet.Core 2.9.0 MyNuGet NuGet.Core is the core framework assembly for NuGet...
NuGet.Core 2.8.6 MyNuGet NuGet.Core is the core framework assembly for NuGet...
NuGet.Core 2.8.0 MyNuGet NuGet.Core is the core framework assembly for NuGet...
NuGet.Core 2.7.0 MyNuGet NuGet.Core is the core framework assembly for NuGet...
`Find-Package` uses the Name parameter to specify the package name NuGet.Core . The ProviderName parameter specifies to search for the package in NuGet . MinimumVersion specifies the lowest version 2.7.0 . MaximumVersion specifies the highest version 2.9.0 . AllVersions determines the range is returned as specified by the minimum and maximum.
Example 6: Find a package from a file system
PS> Find-Package -Source C:\LocalPkg
Name Version Source Summary
---- ------- ------ -------
Microsoft.Web.Xdt 3.0.0 C:\LocalPkg\ Microsoft Xml Document Transformation (XDT)...
NuGet.Core 2.14.0 C:\LocalPkg\ NuGet.Core is the core framework assembly...
PARAMETERS
-AcceptLicense
Automatically accepts a license agreement if the package requires it.
Type: System.Management.Automation.SwitchParameter
Parameter Sets: PowerShellGet
Aliases:
Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False
-AllowPrereleaseVersions
Includes packages marked as a prerelease in the results.
Type: System.Management.Automation.SwitchParameter
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False
-AllVersions
Indicates that `Find-Package` returns all available versions of the package. By default, `Find-Package` only returns the newest available version.
Type: System.Management.Automation.SwitchParameter
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False
-Command
Specifies an array of commands searched by `Find-Package`.
Type: System.String[]
Parameter Sets: PowerShellGet
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-ConfigFile
Specifies a configuration file.
Type: System.String
Parameter Sets: NuGet
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-Contains
`Find-Package` gets objects if any item in the object's property values are an exact match for the specified value.
Type: System.String
Parameter Sets: NuGet
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-Credential
Specifies a user account that has permission to search for packages.
Type: System.Management.Automation.PSCredential
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-DscResource
Specifies an array of Desired State Configuration (DSC) resources that this cmdlet searches.
Type: System.String[]
Parameter Sets: PowerShellGet
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-Filter
Specifies terms to search for within the Name and Description properties.
Type: System.String
Parameter Sets: PowerShellGet
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-FilterOnTag
Specifies the tag that filters the results. Results that don't contain the specified tag are excluded.
Type: System.String[]
Parameter Sets: NuGet
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-Force
Forces the command to run without asking for user confirmation.
Type: System.Management.Automation.SwitchParameter
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False
-ForceBootstrap
Indicates that `Find-Package` forces PackageManagement to automatically install the package provider.
Type: System.Management.Automation.SwitchParameter
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False
-Headers
Specifies the headers for the package.
Type: System.String[]
Parameter Sets: NuGet
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-IncludeDependencies
Indicates that this cmdlet includes package dependencies in the results.
Type: System.Management.Automation.SwitchParameter
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False
-Includes
Specifies whether `Find-Package` should find all packages within a category.
The accepted values are as follows:
- Cmdlet
- DscResource
- Function
- RoleCapability
- Workflow
Type: System.String[]
Parameter Sets: PowerShellGet
Aliases:
Accepted values: Cmdlet, DscResource, Function, RoleCapability, Workflow
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-MaximumVersion
Specifies the maximum package version that you want to find.
Type: System.String
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-MinimumVersion
Specifies the minimum package version that you want to find. If a higher version is available, that version is returned.
Type: System.String
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-Name
Specifies one or more package names, or package names with wildcard characters. Separate multiple package names with commas.
Type: System.String[]
Parameter Sets: (All)
Aliases:
Required: False
Position: 0
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-PackageManagementProvider
Specifies the name of a package management provider.
Type: System.String
Parameter Sets: PowerShellGet
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-ProviderName
Specifies one or more package provider names. Separate multiple package provider names with commas. Use `Get-PackageProvider` to get a list of available package providers.
Type: System.String[]
Parameter Sets: (All)
Aliases: Provider
Accepted values: Bootstrap, NuGet, PowerShellGet
Required: False
Position: Named
Default value: None
Accept pipeline input: True (ByPropertyName)
Accept wildcard characters: False
-Proxy
Specifies a proxy server for the request, rather than a direct connection to the internet resource.
Type: System.Uri
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-ProxyCredential
Specifies a user account that has permission to use the proxy server that is specified by the Proxy parameter.
Type: System.Management.Automation.PSCredential
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-PublishLocation
Specifies a location for publishing the package.
Type: System.String
Parameter Sets: PowerShellGet
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-RequiredVersion
Specifies an exact package version that you want to find.
Type: System.String
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-RoleCapability
Specifies an array of role capabilities.
Type: System.String[]
Parameter Sets: PowerShellGet
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-ScriptPublishLocation
Specifies a script publishing location for the package.
Type: System.String
Parameter Sets: PowerShellGet
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-ScriptSourceLocation
Specifies a script source location.
Type: System.String
Parameter Sets: PowerShellGet
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-SkipValidate
Switch that skips package credential validation.
Type: System.Management.Automation.SwitchParameter
Parameter Sets: NuGet
Aliases:
Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False
-Source
Specifies one or more package sources. Use `Get-PackageSource` to get a list of available package sources. A file system directory can be used as a source for download packages.
Type: System.String[]
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: True (ByPropertyName)
Accept wildcard characters: False
-Tag
Specifies one or more strings to search for in the package metadata.
Type: System.String[]
Parameter Sets: PowerShellGet
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-Type
Specifies whether to search for packages with a module, a script, or either.
Type: System.String
Parameter Sets: PowerShellGet
Aliases:
Accepted values: Module, Script, All
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
CommonParameters
This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see about_CommonParameters.
INPUTS
None
`Find-Package` doesn't accept input from the pipeline.
OUTPUTS
SoftwareIdentify[]
`Find-Package` outputs a SoftwareIdentity object.
NOTES
> [!IMPORTANT] > As of April 2020, the PowerShell Gallery no longer supports Transport Layer Security (TLS) > versions 1.0 and 1.1. If you are not using TLS 1.2 or higher, you will receive an error when > trying to access the PowerShell Gallery. Use the following command to ensure you are using TLS > 1.2: > > `[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12` > > For more information, see the > announcement (https://devblogs.microsoft.com/powershell/powershell-gallery-tls-support/)in the > PowerShell blog.