Find-Package

在可用包源中查找软件包。

语法

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

说明

Find-Package 查找包源中可用的软件包。 Get-PackageProviderGet-PackageSource 显示有关提供程序的详细信息。

重要

PackageManagement 模块中包含的命令不同于 Visual Studio 的包管理器控制台中 NuGet 模块提供的命令。 每个模块都有在其他模块中不可用的命令。 具有相同名称的命令在其特定参数上有所不同。 有关详细信息,请参阅 Visual Studio 的包管理器控制台的 PowerShell 参考 文档。

示例

示例 1:查找包提供程序中的所有可用包

此命令在已注册的库中查找所有可用的 PowerShell 模块包。 使用 Get-PackageProvider 获取提供程序名称。

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 使用 Provider 参数指定提供程序 NuGet

示例 2:从包源查找包

此命令从指定的包源中查找包的最新版本。 如果未提供包源, Find-Package 请搜索每个已安装的包提供程序及其包源。 使用 Get-PackageSource 获取源名称。

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 使用 Name 参数指定包名称 NuGet.CoreSource 参数指定在 MyNuGet 中搜索包。

示例 3:查找包的所有版本

此命令查找指定提供程序中的所有可用包版本。

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 使用 Name 参数指定 包 NuGet.CoreProviderName 参数指定在 MyNuGet 中搜索包。 AllVersions 指定返回所有可用版本。

示例 4:查找具有特定名称和版本的包

此命令从指定的提供程序中查找特定的包版本。

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 使用 Name 参数指定包名称 NuGet.CoreProviderName 参数指定在 NuGet 中搜索包。 RequiredVersion 指定仅返回版本 2.9.0

示例 5:查找版本范围内的包

此命令查找指定包的版本范围。

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 使用 Name 参数指定包名称 NuGet.CoreProviderName 参数指定在 NuGet 中搜索包。 MinimumVersion 指定最低版本 2.7.0MaximumVersion 指定最高版本 2.9.0AllVersions 确定按最小值和最大值指定的范围返回。

示例 6:从文件系统查找包

此命令查找本地计算机上存储的文件扩展名 .nupkg 为 的包。 这些文件是从库(如 NuGet)下载的包。

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

参数

-AcceptLicense

如果包需要许可协议,则自动接受许可协议。

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

-AllowPrereleaseVersions

在结果中包含标记为预发行版的包。

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

-AllVersions

指示 Find-Package 返回包的所有可用版本。 默认情况下, Find-Package 仅返回最新的可用版本。

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

-Command

指定由 Find-Package搜索的命令数组。

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

-ConfigFile

指定配置文件。

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

-Contains

Find-Package 如果对象的属性值中的任何项与指定值完全匹配,则获取 对象。

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

-Credential

指定有权搜索包的用户帐户。

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

-DscResource

指定此 cmdlet 搜索的Desired State Configuration (DSC) 资源的数组。

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

-Filter

指定在 NameDescription 属性中要搜索的术语。

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

-FilterOnTag

指定筛选结果的标记。 不包含指定标记的结果。

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

-Force

强制运行命令而不要求用户确认。

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

-ForceBootstrap

指示 Find-Package 强制 PackageManagement 自动安装包提供程序。

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

-Headers

指定包的标头。

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

-IncludeDependencies

指示此 cmdlet 在结果中包含包依赖项。

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

-Includes

指定是否 Find-Package 应查找类别中的所有包。

接受的值如下所示:

  • Cmdlet
  • DscResource
  • 功能
  • RoleCapability
  • 工作流
Type:String[]
Accepted values:Cmdlet, DscResource, Function, RoleCapability, Workflow
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-MaximumVersion

指定要查找的最大包版本。

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

-MinimumVersion

指定要查找的最低包版本。 如果有更高的版本可用,则返回该版本。

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:True

-PackageManagementProvider

指定包管理提供程序的名称。

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

-ProviderName

指定一个或多个包提供程序名称。 用逗号分隔多个包提供程序名称。 使用 Get-PackageProvider 获取可用包提供程序的列表。

Type:String[]
Aliases:Provider
Accepted values:Bootstrap, NuGet, PowerShellGet
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Proxy

为请求指定代理服务器,而不是直接连接到 Internet 资源。

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

-ProxyCredential

指定有权使用由 Proxy 参数指定的代理服务器的用户帐户。

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

-PublishLocation

指定发布包的位置。

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

-RoleCapability

指定角色功能的数组。

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

-ScriptPublishLocation

指定包的脚本发布位置。

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

-ScriptSourceLocation

指定脚本源位置。

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

-SkipValidate

跳过包凭据验证的开关。

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

-Source

指定一个或多个包源。 使用 Get-PackageSource 获取可用包源的列表。 文件系统目录可用作下载包的源。

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

-Tag

指定要在包元数据中搜索的一个或多个字符串。

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

-Type

指定是使用模块、脚本还是任一方式搜索包。

Type:String
Accepted values:Module, Script, All
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

输入

None

不能通过管道将对象传递给此 cmdlet。

输出

SoftwareIdentify[]

此 cmdlet 返回 SoftwareIdentity 对象。

备注

重要

自 2020 年 4 月起,PowerShell 库已不再支持传输层安全性 (TLS) 版本 1.0 和 1.1。 如果你使用的不是 TLS 1.2 或更高版本,那么,在尝试访问 PowerShell 库时,将会收到错误。 使用以下命令可以确定使用的是 TLS 1.2:

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

有关详细信息,请参阅 PowerShell 博客中的公告