Get-PackageProvider

返回连接到包管理的包提供程序的列表。

语法

Get-PackageProvider
   [[-Name] <String[]>]
   [-ListAvailable]
   [-Force]
   [-ForceBootstrap]
   [<CommonParameters>]

说明

Get-PackageProvider cmdlet 返回连接到包管理的包提供程序的列表。 这些提供程序的示例包括 PSModule、NuGet 和 Chocolatey。 可以根据一个或多个提供程序名称的所有或部分筛选结果。

示例

示例 1:获取当前加载的所有包提供程序

Get-PackageProvider

此命令获取当前在本地计算机上加载的所有包提供程序的列表。

示例 2:获取所有可用的包提供程序

Get-PackageProvider -ListAvailable

此命令获取本地计算机上可用的所有包提供程序的列表。

示例 3:动态获取包提供程序

Get-PackageProvider -Name "Chocolatey" -ForceBootstrap

如果计算机未安装 Chocolatey 提供程序,此命令会自动安装 Chocolatey 提供程序。

参数

-Force

指示此 cmdlet 强制使用此 cmdlet 执行所有其他作。 在中 Get-PackageProvider,这意味着 Force 参数的行为与 ForceBootstrap 参数相同。

类型:SwitchParameter
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-ForceBootstrap

指示此 cmdlet 强制包管理自动安装包提供程序。

类型:SwitchParameter
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-ListAvailable

获取所有已安装的提供程序。 Get-PackageProvider 获取 PSModulePath 环境变量中列出的路径中的提供程序,以及包提供程序程序集文件夹:

  • $env:ProgramFiles\PackageManagement\ProviderAssemblies
  • $env:LOCALAPPDATA\PackageManagement\ProviderAssemblies

如果没有此参数, Get-PackageProvider 则仅获取当前会话中加载的提供程序。

类型:SwitchParameter
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-Name

指定一个或多个提供程序名称,或部分提供程序名称。 用逗号分隔多个提供程序名称。 此参数的有效值包括已随包一起安装的提供程序的名称;PackageManagement 附带一组默认提供程序,包括 PSModuleMSI 提供程序。

类型:String[]
Position:0
默认值:None
必需:False
接受管道输入:False
接受通配符:False

输出

Microsoft.PackageManagement.Implementation.PackageProvider

此 cmdlet 为每个与参数匹配的已安装包提供程序返回 PackageProvider 对象。 默认情况下,它将返回每个已安装的包提供程序。

备注

重要

截至 2020 年 4 月,PowerShell 库不再支持传输层安全性(TLS)版本 1.0 和 1.1。 如果未使用 TLS 1.2 或更高版本,则尝试访问 PowerShell 库时会收到错误。 使用以下命令确保使用的是 TLS 1.2:

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

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