Add-PSSnapin
将一个或多个 Windows PowerShell 管理单元添加到当前会话。
语法
Add-PSSnapin [-Name] <string[]> [-PassThru] [<CommonParameters>]
说明
Add-PSSnapin cmdlet 将已注册的 Windows PowerShell 管理单元添加到当前会话。添加管理单元后,可以在当前会话中使用添加的管理单元所支持的 cmdlet 和提供程序。
若要将管理单元添加到以后所有的 Windows PowerShell 会话中,请在 Windows PowerShell 配置文件中添加 Add-PSSnapin 命令。有关详细信息,请参阅 about_Profiles。
参数
-Name <string[]>
指定管理单元的名称。(这是 Name,而不是 AssemblyName 或 ModuleName。)
要查找系统中已注册的管理单元的名称,请键入:“get-pssnapin –registered”。
是否为必需? |
true |
位置? |
1 |
默认值 |
|
是否接受管道输入? |
true (ByPropertyName) |
是否接受通配符? |
false |
-PassThru
返回表示每个已添加的管理单元的对象。默认情况下,此 cmdlet 将不产生任何输出。
是否为必需? |
false |
位置? |
named |
默认值 |
|
是否接受管道输入? |
false |
是否接受通配符? |
false |
<CommonParameters>
此 cmdlet 支持通用参数:-Verbose、-Debug、-ErrorAction、-ErrorVariable、-OutBuffer 和 -OutVariable。有关详细信息,请参阅 about_Commonparameters.
输入和输出
输入类型是指可通过管道传递给 cmdlet 的对象的类型。返回类型是指 Cmdlet 所返回对象的类型。
输入 |
无 不能通过管道将对象传递给 Add-PSSnapin。 |
输出 |
“无”或 System.Management.Automation.PSSnapInInfo 如果使用 PassThru 参数,则 Add-PSSnapin 返回一个表示管理单元的 PSSnapInInfo 对象。否则,此 cmdlet 将不产生任何输出。 |
说明
有关 Windows PowerShell 中的管理单元的详细信息,请参阅 about_PSSnapins。有关如何创建 Windows PowerShell 管理单元的信息,请参阅 MSDN (Microsoft Developer Network) Library 中的“如何创建 Windows PowerShell 管理单元”,网址是 https://go.microsoft.com/fwlink/?LinkId=144762。
Add-PSSnapin 仅用于向当前的会话添加管理单元。要将管理单元添加到所有的 Windows PowerShell 会话中,请将它添加到 Windows PowerShell 配置文件中。有关详细信息,请参阅 about_Profiles。
可以添加已使用 Microsoft .NET Framework 安装实用工具进行注册的任何 Windows PowerShell 管理单元。有关详细信息,请参阅 MSDN Library 中的“如何注册 Cmdlet、提供程序和主机应用程序”,网址是 https://go.microsoft.com/fwlink/?LinkID=143619。
若要获取计算机上注册的管理单元列表,请键入“get-pssnapin -registered”。
添加管理单元之前,Add-PSSnapin 会检查该管理单元的版本,验证它是否与当前版本的 Windows PowerShell 兼容。如果管理单元未通过版本检查,则 Windows PowerShell 将报告错误。
示例 1
C:\PS>add-PSSnapIn Microsoft.Exchange, Microsoft.Windows.AD
说明
-----------
此命令向当前的会话添加 Microsoft Exchange 和 Active Directory 管理单元。
示例 2
C:\PS>get-pssnapin -registered | add-pssnapin -passthru
说明
-----------
此命令向会话添加所有已注册的 Windows PowerShell 管理单元。它使用 Get-PSSnapin cmdlet(带 Registered 参数)来获取表示每个已注册管理单元的对象。管道运算符 (|) 将结果传递给 Add-PSSnapin,后者将这些结果添加到会话中。PassThru 参数返回表示每个已添加的管理单元的对象。
示例 3
C:\PS>get-pssnapin
说明
-----------
此示例演示了在系统中注册一个管理单元,然后将其添加到会话的过程。它使用了 ManagementFeatures,这是在名为 ManagementCmdlets.dll 的文件中实现的一个虚拟管理单元。
第一条命令获取已添加到当前会话的管理单元,其中包括随同 Windows PowerShell 安装的管理单元。在此示例中,不返回 ManagementFeatures。这表示 ManagementFeatures 尚未添加到会话中。
get-pssnapin
第二条命令获取已在系统中注册的管理单元,其中包括已添加到会话的那些管理单元。随同 Windows PowerShell 一起安装的管理单元不包括在内。
get-pssnapin -registered
在本例中,该命令不返回任何管理单元。这表示 ManagementFeatures 管理单元尚未在系统上注册。
第三条命令为 .NET Framework 中 InstallUtil 工具的路径创建一个别名“installutil”。
set-alias installutil $env:windir\Microsoft.NET\Framework\v2.0.50727\installutil.exe
第四条命令使用 InstallUtil 工具来注册管理单元。该命令指定了 ManagementCmdlets.dll 的路径、文件名或管理单元的“模块名称”。
installutil C:\Dev\Management\ManagementCmdlets.dll
第五条命令与第二条命令相同。这次,使用该命令来验证是否已注册 ManagementCmdlets 管理单元。
get-pssnapin -registered
第六条命令使用 Add-PSSnapin cmdlet 将 ManagementFeatures 管理单元添加到会话。该命令指定了管理单元名称 ManagementFeatures,而不是文件名。
add-pssnapin ManagementFeatures
为了验证是否已将管理单元添加到会话中,第七条命令使用 Get-Command cmdlet 的 Module 参数。该命令显示由管理单元或模块添加到会话中的项。
get-command -module ManagementFeatures
也可以使用 Get-Command 返回的对象的 PSSnapin 属性来查找 cmdlet 源自的管理单元或模块。第八条命令使用点表示法来查找 Set-Alias 命令的 PSSnapin 属性的值。
(get-command set-alias).pssnapin