Выключение компьютера через командную строку¶
Выключение компьютера через командную строку — выполнение операций завершения работы или перезагрузки операционной системы средствами командного интерпретатора, без использования графического интерфейса. Такой подход применяется в Windows, Linux и macOS, позволяет автоматизировать завершение сеанса, экономить время при работе с несколькими компьютерами и остаётся доступным, когда графический интерфейс нефункционален.
¶Windows
¶Команда shutdown
Основной инструмент выключения в Windows — утилита shutdown.exe, расположенная в каталоге C:\Windows\System32. Она поддерживает набор ключей:
| Ключ | Назначение |
|---|---|
/s | Выключение компьютера |
/r | Перезагрузка |
/h | Гибернатация |
/l | Завершение сеанса текущего пользователя |
/a | Отмена запланированного выключения |
/t N | Задержка в N секунд перед выполнением |
/f | Принудительное закрытие приложений без предупреждения |
/m \\имя_компьютера | Действие для удалённого компьютера в домене |
/c "текст" | Комментарий, отображаемый пользователям |
Для немедленного выключения используется команда:
`` shutdown /s /f /t 0 ``
Ключ /f гарантирует, что открытые документы с несохранёнными изменениями будут закрыты без запроса подтверждения. Без него система предупредит пользователя о завершении работы. Значение /t 0 отключает отсчёт времени; по умолчанию Windows устанавливает задержку 30 секунд.
Для перезагрузки вместо /s указывается /r. Для отмены запланированного действия, если пользователь передумал, выполняется shutdown /a.
¶Другие способы в Windows
Помимо shutdown.exe, в Windows можно использовать:
taskkill /f /im explorer.exe— завершение оболочки Explorer, после чего компьютер можно выключить сочетаниемAlt+F4на рабочем столе.powershell Stop-Computer -Force— выключение средствами Windows PowerShell.rundll32.exe user.exe,ExitWindowsEx— устаревший вызов, не рекомендуется использовать в современных версиях.
Открыть командную строку в Windows можно через меню «Пуск» (ввод cmd), сочетанием Win+R с последующей командой cmd, или через PowerShell. Для выполнения команд, затрагивающих все сеансы, может потребоваться запуск от имени администратора.
¶Linux
¶Команды выключения
В Linux управление питанием реализовано через несколько утилит, работающих с системным демоном systemd:
poweroff— немедленное выключение.shutdown -h now— выключение; ключ-hозначает halt (останов).shutdown -P now— выключение с обесточиванием.systemctl poweroff— выключение через systemd.reboot— перезагрузка.
В системах без systemd (или в ранних версиях дистрибутивов) использовались команды halt, poweroff и shutdown напрямую, а также init 0 — перевод системы в режим остановки.
¶Планирование и отмена
Команда shutdown поддерживает отложенные действия. Синтаксис:
`` shutdown -h +10 ``
выключит компьютер через 10 минут. Вместо относительного времени можно указать точное время в формате ЧЧ:ММ. Для отмены запланированного выключения используется shutdown -c.
В многопользовательской системе перед выключением администратор может отправить предупреждение всем активным пользователям:
`` shutdown -h +5 "Сервер будет выключен через 5 минут" ``
¶Права доступа
Выполнение команд выключения от обычного пользователя возможно, если он входит в группу sudo или имеет соответствующие полномочия через polkit. В противном случае требуется запуск от суперпользователя (sudo poweroff).
¶macOS
В macOS для выключения используется утилита shutdown:
sudo shutdown -h now— выключение.sudo shutdown -r now— перезагрузка.sudo halt— остановка системы.
Командная строка в macOS открывается через приложение «Терминал», расположенное в папке «Программы → Утилиты».
¶Автоматизация и отложенные сценарии
Командная строка удобна для построения автоматизированных сценариев. В Windows можно создать файл .bat или .cmd со строкой shutdown /s /t 600 и запускать его для выключения через 10 минут. В Linux аналогичная задача решается через at или cron:
`` echo "poweroff" | at now + 1 hour ``
Также возможно выключение удалённого компьютера в домене Windows:
`` shutdown /s /m \\PC-NAME /t 30 ``
¶Типичные ошибки
Наиболее частые причины, по которым команда не срабатывает:
- недостаточные права (в Linux и macOS требуется
sudo, в Windows — запуск от администратора); - неправильный синтаксис ключей;
- активные сеансы RDP или консольные сеансы, блокирующие завершение работы;
- политики групповых настроек в домене, запрещающие выключение.
В Linux полезно проверять состояние демона systemd-logind — именно он управляет сеансами и обрабатывает запросы на выключение.
¶Источники
- Документация Microsoft по утилите shutdown (learn.microsoft.com)
- Руководство systemd по командам управления питанием (freedesktop.org)
- Справочные страницы Linux
shutdown(8),poweroff(8) - Руководство пользователя macOS, раздел «Терминал»
