更改计算机状态
本示例仅适用于 Windows 平台。
若要在 PowerShell 中重置计算机,请使用标准命令行工具、WMI 或 CIM 类。 尽管你使用 PowerShell 仅仅是为了运行该工具,但了解如何在 PowerShell 中更改计算机的电源状态将阐明有关在 PowerShell 中使用外部工具的一些重要详细信息。
锁定计算机
使用标准可用工具直接锁定计算机的唯一方法是调用 user32.dll 中的 LockWorkstation() 函数:
rundll32.exe user32.dll,LockWorkStation
此命令将立即锁定工作站。 它使用 rundll32.exe
调用 user32.dll
中的 LockWorkStation
函数。
如果在启用了“快速用户切换”时锁定工作站(例如在 Windows XP 中),则计算机将显示用户登录屏幕,而不会启动当前用户的屏幕保护程序。
若要关闭终端服务器上的特定会话,请使用 tsshutdn.exe 命令行工具。
从当前会话退出登录
可以使用多种不同的方法来注销本地系统上的会话。 最简单的方法是使用远程桌面/终端服务命令行工具 logoff.exe(若要了解有关详细信息,请在 PowerShell 提示符处键入 logoff /?
)。 若要注销当前活动会话,请键入 logoff
而不带参数。
你还可以使用具 shutdown.exe 工具及其 logoff 选项:
shutdown.exe -l
另一种方法是使用 WMI。 Win32_OperatingSystem 类具有 Shutdown 方法。 调用具有 0 标志的方法将启动注销:
有关详细信息,请参阅 Win32_OperatingSystem 类的 Shutdown 方法。
Get-CimInstance -ClassName Win32_OperatingSystem | Invoke-CimMethod -MethodName Shutdown
关闭或重启计算机
关闭和重启计算机是类似的任务。 大多数命令行工具都支持这两种操作。 Windows 包含两个用于重启计算机的命令行工具。 使用 tsshutdn.exetsshutdn.exe
或 shutdown.exeshutdown.exe
及其相应参数。 你可以从 tsshutdn.exe /?
或 shutdown.exe /?
获取详细的使用信息。
也可以直接从 PowerShell 执行关闭和重启操作。
要关闭计算机,请使用 Stop-Computer
命令
Stop-Computer
要重启操作系统,请使用 Restart-Computer 命令
Restart-Computer
要强制立即重新启动计算机,请使用 -Force 参数。
Restart-Computer -Force