Изменение состояния компьютера
Этот пример применяется только к платформам Windows.
Чтобы вернуть компьютер в исходное состояние в PowerShell, используйте стандартную программу командной строки, инструментарий WMI или класс CIM. Хотя PowerShell используется только для запуска программы, сведения об изменении состояния электропитания для компьютера в PowerShell иллюстрируют некоторые важные особенности работы с внешними средствами в PowerShell.
Блокировка компьютера
Единственным способом непосредственной блокировки компьютера с помощью стандартных средств является вызов функции LockWorkstation() в user32.dll:
rundll32.exe user32.dll,LockWorkStation
Эта команда немедленно блокирует рабочую станцию. Он используется rundll32.exe
для вызова LockWorkStation
функции в user32.dll
.
Если рабочая станция блокируется при включенном быстром переключении пользователей, например, в Windows XP, на компьютере отображается экран входа в систему, а не заставка текущего пользователя.
Чтобы завершить работу конкретных сеансов на сервере терминалов, используйте программу командной строки tsshutdn.exe.
Ведение журнала с текущего сеанса
Выйти из сеанса в локальной системе можно несколькими способами. Самый простой заключается в использовании программы командной строки удаленного рабочего стола или служб терминалов — logoff.exe (для получения дополнительных сведений введите logoff /?
в командной строке PowerShell). Чтобы выйти из текущего активного сеанса, введите logoff
без аргументов.
Можно также использовать средство shutdown.exe с параметром выхода:
shutdown.exe -l
Еще один вариант — использование инструментария WMI. Класс Win32_OperatingSystem имеет метод Shutdown. Вызов метода с флагом 0 инициирует выход из системы:
Дополнительные сведения см. в методе Shutdown класса Win32_OperatingSystem.
Get-CimInstance -ClassName Win32_OperatingSystem | Invoke-CimMethod -MethodName Shutdown
Завершение работы или перезагрузка компьютера
Завершение работы и перезапуск компьютеров аналогичны задачам. Большинство средств командной строки поддерживают оба действия. Windows включает два средства командной строки для перезагрузки компьютера. tsshutdn.exe
shutdown.exe
Используйте либо с соответствующими аргументами. Подробные сведения об использовании можно получить, запустив tsshutdn.exe /?
или shutdown.exe /?
.
Вы также можете выполнять операции завершения работы и перезапуска непосредственно из PowerShell.
Чтобы завершить работу компьютера, используйте Stop-Computer
команду
Stop-Computer
Чтобы перезапустить операционную систему, используйте команду Restart-Computer.
Restart-Computer
Чтобы выполнить немедленную перезагрузку компьютера, используйте параметр -Force.
Restart-Computer -Force
PowerShell