从计算机上删除已注册的会话配置。

语法

Unregister-PSSessionConfiguration [-Name] <string> [-Force] [-NoServiceRestart] [-Confirm] [-WhatIf] [<CommonParameters>]

说明

Unregister-PSSessionConfiguration cmdlet 从计算机上删除已注册的会话配置。这是一个高级 cmdlet,供系统管理员为其用户管理自定义会话配置时使用。

如果意外删除了默认的 Microsoft.PowerShell 或 Microsoft.PowerShell32 会话配置,可使用 Enable-PSRemoting cmdlet 还原它们。

参数

-Force

禁止显示所有用户提示,并重新启动 WinRM 服务而不显示提示。重新启动服务将使配置更改生效。

若要阻止重新启动并禁止显示重新启动提示,请使用 NoServiceRestart 参数。

是否为必需?

false

位置?

named

默认值

是否接受管道输入?

false

是否接受通配符?

false

-Name <string>

指定要删除的会话配置的名称。输入一个或多个配置名称。允许使用通配符。此参数是必需的。

也可以通过管道将会话配置对象传递给 Unregister-PSSessionConfiguration。

是否为必需?

true

位置?

1

默认值

是否接受管道输入?

true (ByPropertyName)

是否接受通配符?

false

-NoServiceRestart

不重新启动 WinRM 服务,并且禁止提示重新启动该服务。

默认情况下,当您输入 Unregister-PSSessionConfiguration 命令时,系统会提示您重新启动 WinRM 服务以使更改生效。在重新启动 WinRM 服务之前,用户仍然可以使用未注册的会话配置,即使 Get-PSSessionConfiguration 找不到该会话配置也如此。

若要重新启动 WinRM 服务并且不显示提示,请使用 Force 参数。若要手动重新启动 WinRM 服务,请使用 Restart-Service cmdlet。

是否为必需?

false

位置?

named

默认值

是否接受管道输入?

false

是否接受通配符?

false

-Confirm

在执行命令之前提示您进行确认。

是否为必需?

false

位置?

named

默认值

是否接受管道输入?

false

是否接受通配符?

false

-WhatIf

描述如果执行该命令会发生什么情况(无需实际执行该命令)。

是否为必需?

false

位置?

named

默认值

是否接受管道输入?

false

是否接受通配符?

false

<CommonParameters>

此 cmdlet 支持通用参数:-Verbose、-Debug、-ErrorAction、-ErrorVariable、-OutBuffer 和 -OutVariable。有关详细信息,请参阅 about_Commonparameters.

输入和输出

输入类型是指可通过管道传递给 cmdlet 的对象的类型。返回类型是指 Cmdlet 所返回对象的类型。

输入

Microsoft.PowerShell.Commands.PSSessionConfigurationCommands#PSSessionConfiguration

可以通过管道将会话配置对象从 Get-PSSessionConfiguration 传递给 Unregister-PSSessionConfiguration。

输出

None

此 cmdlet 不返回任何对象。

说明

若要在 Windows Vista、Windows Server 2008 以及更高版本的 Windows 上运行此 cmdlet,您必须使用“以管理员身份运行”选项启动 Windows PowerShell。

示例 1

C:\PS>unregister-pssessionconfiguration -name MaintenanceShell

说明
-----------
此命令将 MaintenanceShell 会话配置从计算机中删除。






示例 2

C:\PS>unregister-pssessionconfiguration -maintenanceShell -force

说明
-----------
此命令将 MaintenanceShell 会话配置从计算机中删除。该命令使用 Force 参数禁止显示所有用户消息,并重新启动 WinRM 服务而不显示提示。






示例 3

C:\PS>unregister-pssessionconfiguration -name *

C:\PS> get-pssessionconfiguration -name * | unregister-pssessionconfiguration

说明
-----------
此命令将删除计算机上的所有会话配置。这些命令的效果相同,因此可以互换。






示例 4

C:\PS>unregister-pssessionconfiguration -name maintenanceShell -noServiceRestart

C:\PS> get-pssessionconfiguration -name maintenanceShell

Get-PSSessionConfiguration -name maintenanceShell : No Session Configuration matches criteria "maintenanceShell".
    + CategoryInfo          : NotSpecified: (:) [Write-Error], WriteErrorException
    + FullyQualifiedErrorId : Microsoft.PowerShell.Commands.WriteErrorException

C:\PS> new-pssession -configurationName MaintenanceShell

 Id Name      ComputerName    State    Configuration         Availability
 -- ----      ------------    -----    -------------         ------------
  1 Session1  localhost       Opened   MaintenanceShell      Available

C:\PS> restart-service winrm

C:\PS> new-pssession -configurationName MaintenanceShell
[localhost] Connecting to remote server failed with the following error message : The WS-Management service cannot process the request. The resource
URI (https://schemas.microsoft.com/powershell/MaintenanceShell) was not found in the WS-Management catalog. The catalog contains the metadata that describes resour
ces, or logical endpoints. For more information, see the about_Remote_Troubleshooting Help topic.
    + CategoryInfo          : OpenError: (System.Manageme....RemoteRunspace:RemoteRunspace) [], PSRemotingTransportException
    + FullyQualifiedErrorId : PSSessionOpenFailed

说明
-----------
此示例说明使用 Unregister-PSSessionConfiguration 的 NoServiceRestart 参数的作用。此参数用于阻止服务重新启动,防止对计算机上的任何会话造成中断。

第一个命令使用 Unregister-PSSessionConfiguration cmdlet 删除 MaintenanceShell 会话配置。但是,由于该命令使用 NoServiceRestart 参数,因此 WinRM 服务不会重新启动,并且更改仍未完全生效。

第二个命令使用 Get-PSSessionConfiguration cmdlet 获取 MaintenanceShell 会话。因为该会话已经从 WS-Management 资源表中删除,所以 Get-PSSession 无法返回该会话。

第三个命令使用 New-PSSession cmdlet 在本地计算机上创建一个使用 MaintenanceShell 配置的会话。该命令成功运行。

第四个命令使用 Restart-Service cmdlet 重新启动 WinRM 服务。

第五个命令再次使用 New-PSSession cmdlet 创建使用 MaintenanceShell 配置的会话。此次因为 MaintenanceShell 配置已被删除,会话将失败。






另请参阅




目录