Get-PSProvider

获取有关指定 Windows PowerShell 提供程序的信息。

语法

Get-PSProvider
   [[-PSProvider] <String[]>]
   [<CommonParameters>]

说明

Get-PSProvider cmdlet 获取当前会话中的 Windows PowerShell 提供程序。 可以在会话中获取特定驱动器或所有驱动器。

Windows PowerShell 提供程序允许你访问各种数据存储,就像它们是文件系统驱动器一样。 有关 Windows PowerShell 提供程序的信息,请参阅about_Providers。

示例

示例 1:显示所有可用提供程序的列表

PS C:\> Get-PSProvider

此命令显示所有可用的 Windows PowerShell 提供程序的列表。

示例 2:显示以指定字母开头的所有 Windows PowerShell 提供程序的列表

PS C:\> Get-PSProvider f*, r* | Format-List

此命令显示所有以字母 f 或 r 开头的名称的 Windows PowerShell 提供程序的列表。

示例 3:查找将提供程序添加到会话的管理单元或模块

PS C:\> Get-PSProvider | Format-Table name, module, pssnapin -auto

Name        Module       PSSnapIn
----        ------       --------
Test        TestModule
WSMan                    Microsoft.WSMan.Management
Alias                    Microsoft.PowerShell.Core
Environment              Microsoft.PowerShell.Core
FileSystem               Microsoft.PowerShell.Core
Function                 Microsoft.PowerShell.Core
Registry                 Microsoft.PowerShell.Core
Variable                 Microsoft.PowerShell.Core
Certificate              Microsoft.PowerShell.Security

PS C:\> Get-PSProvider | Where {$_.pssnapin -eq "Microsoft.PowerShell.Security"}

Name            Capabilities      Drives
----            ------------      ------
Certificate     ShouldProcess     {cert}

这些命令查找将提供程序添加到会话的 Windows PowerShell 管理单元或模块。 所有 Windows PowerShell 元素(包括提供程序)都源自管理单元或模块。

这些命令使用 ProviderInfo 对象的 PSSnapin 和 Module 属性,Get-PSProvider 返回。 这些属性的值包含添加提供程序的管理单元或模块的名称。

第一个命令获取会话中的所有提供程序,并使用名称、模块和 PSSnapin 属性的值在表中设置这些提供程序的格式。

第二个命令使用 Where-Object cmdlet 来获取来自 Microsoft.PowerShell.Security 管理单元的提供程序。

示例 4:解析文件系统提供程序的 Home 属性的路径

PS C:\> Resolve-Path ~

Path
----
C:\Users\User01

PS C:\> (get-psprovider FileSystem).home
C:\Users\User01

此示例显示波形符(~)表示 FileSystem 提供程序的 Home 属性的值。 Home 属性值是可选的,但对于 FileSystem 提供程序,它定义为 $env:homedrive$env:homepath 或 $home。

参数

-PSProvider

指定此 cmdlet 获取其信息的 Windows PowerShell 提供程序的名称或名称。

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

输入

String[]

可以通过管道将一个或多个提供程序名称字符串传递给此 cmdlet。

输出

ProviderInfo

此 cmdlet 返回表示会话中的 Windows PowerShell 提供程序的对象。