Тарифы Услуги Сим-карты

Как выключить компьютер командой shutdown. Выключить компьютер из командной строки

В любой современной операционной системе есть возможность выключить компьютер через командную строку. В Windows 10 это чаще всего требуется когда необходимо удалённо перезагрузить ПК. В случае с Linux (Ubuntu, Debian, CentOS и т.п.) вообще большинство операций выполняются через консоль и теперь не только бородатые дадьки-сисадмины, но уже всё чаще и обычные пользователи знают как выполняется перезагрузка или выключение компьютера через командную строку. Если Вы ещё не в курсе как это можно сделать — я сейчас всё подробно расскажу.

Выключаем Windows 10 через командную строку

В Windows есть штатная консольная утилита , которая даёт возможность перезагрузить или вообще выключить ПК. Для этого достаточно открыть командую строку Виндовс в обычном режиме, либо под администратором. Чтобы её запустить — нажмите кнопку «Пуск» и наберите «сmd» или «Командная строка».

В результатах поиска должен появиться ярлычок «Командная строка».

Примечание: Как вариант, можно нажать комбинацию клавиш Win+R и ввести в строчке «Открыть» команду cmd и нажать клавишу «Enter».

Теперь можно вводить команду shutdown . С её помощью можно выполнить как отключение, так и перезагрузку системы.

Вот список наиболее популярных вариантов использования данной команды:

shutdown — немедленной выключить ПК.
shutdown -r — немедленной перезагрузить ПК.
shutdown –l — выйти из системы (log off).
shutdown -s -t 60 — выключение компьютера по таймеру. В данном случае он будет выключен через 60 секунд.
shutdown -a — приостановить выключение ПК.
shutdown -f — принудительно закрыть все запущенные приложения.

Как выключить Linux из консоли

Если Вы работаете в операционной системе Linux, то чтобы выключить компьютер из командной строки, Вы должны иметь права суперпользователя Root . То есть, сначала Вы должны либо выполнить команду su , чтобы получить соответствующие права, либо выполнять команды через sudo .

Синтаксис команды:

# shutdown [опции] [время] [сообщение]

Наиболее часто используемые опции:
-h - сокращение от halt — полное выключение компьютера;
-r - сокращение от reboot — перезагрузка ПК.
С помощью указания параметра времени Вы можете отключить компьютер по таймеру. Например:
shutdown -r +1 -перезагрузка компьютера через 1 минуту
shutdown -h 22:00 — выключение компьютера в 22:00
Чтобы выключить ПК через командую строку немедленно — наберите команду:
shutdown -h 0
или
shutdown -h now
Для отмены остановки работы системы можно набрать команду:
shutdown -c
После её ввода процесс выключения или перезагрузки будет остановлен.

Примечание:
1. В некоторых случаях, для выключения ПК через командную строку Линукс, можно использовать команды reboot, halt и poweroff. Но они не всегда могут присутствовать в консоли.

2. Если запустив команду на отключение компьютера, вы получите ответ «command not found», то это означает, что оболочка не знает, где находится файл консольной программы. Попробуйте указать полный путь к ней — /sbin/shutdown -h. Именно в каталоге /sbin обычно лежат исполняемые файлы консольных приложений.

Разработчиком операционной системы Windows предусмотрена возможность по расписанию. Как таковой, кнопки выключения с указанием параметров не существует. Для этого нужно воспользоваться командной строкой и другими штатными (встроенными) средствами Windows . Этот способ особенно хорош тем, что работает всегда и везде, поскольку разработан и предусмотрен непосредственно самим разработчиком операционной системы. Проверено на Windows XP, Windows 7, Windows 8.1

Кому не интересна теория, могут сразу перейти в разделы:
-
-

Выключение или перезагрузка компьютера по расписанию
(в заданное время) штатными (встроенными) средствами Windows

по расписанию
(в заданное время) из командной строки (MS DOS)

С незапамятных времён, в комплект поставки всех операционных систем семейства MS Windows входит дисковая операционная система (сокращённо - MS DOS ), которая не имеет привычного пользовательского интерфейса для «бацанья» по нём мышкой. Управление MS DOS производится методом клавиатурного введения набора текстовых команд в специальном окне, в так называемой командной строке . Командная строка работает на любом компьютере, находящимся под управлением любой модификации операционной системы MS Windows.

В операционной системе MS Windows , из командной строки можно сделать абсолютно все, на что только способна эта система.

Командную строку можно вызвать одним из способов:

  • нажать комбинацию клавиш Win+R , ввести cmd.exe , нажать ОК
  • «Меню Пуск > Выполнить», ввести cmd.exe , нажать ОК
  • «Меню Пуск > Все программы > Стандартные > Командная строка»

В любом случае, откроется окно MS DOS
(командная строка для ввода текстовой команды)
Именно в ней (в командной строке) мы будем:

  1. включать и выключать обратного отсчёта ДО
    выключения или перезагрузки компьютера
    (т.е. указывать, через сколько времени произвести действие)
  2. назначать и отменять точное ДЛЯ
    выключения или перезагрузки компьютера
    (т.е. указывать, когда именно произвести действие)

Все манипуляции сводятся к обращению к файлу shutdown.exe
и указанию нужных параметров

Параметры и синтаксис команды shutdown
(для обращения к файлу shutdown.exe)

Файл shutdown.exe отвечает за выключение операционной системы Windows , её перезагрузку и т.д. Для получения перечня параметров запуска файла shutdown.exe из командной строки - жмём сочетание клавиш Win+R , в открывшемся окне вводим cmd.exe (переходим в MS DOS) и уже в DOS-овском окне (вручную) вводим «shutdown /? » (без кавычек). Жмём «OK» (клавиша «Enter»). В ответ система выдаст полный перечень параметров команды shutdown :

Что касается синтаксиса параметров для команды shutdown , то MS DOS понимает оба варианта записи - и через дефис (знак минус «- » на цифровой клавиатуре) и через слеш (косую черту на цифровой клавиатуре):

  1. shutdown /s /f /t 2000 равносильно shutdown -s -f -t 2000
  2. at 23:15 shutdown /r /f равносильно at 23:15 shutdown -r -f

В нашем случае, принципиальной разницы между слешем и дефисом нет. Гораздо важнее помнить о расстановке пробелов (space). Поскольку, в понимании операционной системы, слеш равен дефису с пробелом , то без пробела - может не работать.

Для примера, на скриншоте вверху, я по очереди вводил команды «shutdown-? » и «shutdown -? », а также «shutdown/? » и «shutdown /? ». Ответ системы очевиден.

Упрощённый ввод команды shutdown
(окно «Выполнить»)

Чтобы включить или выключить таймер обратного отсчёта - открываем окно «Выполнить» (Win+R ОК .

Время до выключения (перезагрузки) компьютера нужно вводить в секундах.

Правильный ввод команды подтверждается соответствующими всплывающими окнами в трее. Всплывающие окна должны появляться после каждого правильного введения команды. Выглядят они, примерно так:

Реакция системы на команду выключить или перезагрузить компьютер через 33мин = 2000 секунд
Реакция системы на команду по отмене команды на выключение или перезагрузку компьютера

За 10 минут до выполнения задачи, система начинает напоминать об скором окончании обратного отсчёта. Форма напоминания может иметь несколько вариантов. Наверное, зависит от версии Windows и стиля оформления.

За несколько минут до выполнения задачи система уведомляет об скором окончании обратного отсчёта

Установка из командной строки
точного времени текущей даты
для выключения и перезагрузки компьютера

Установка точного времени текущей даты из позволяет назначить точное время текущей даты для выключения или перезагрузки компьютера. Такая задача будет выполнена только ОДИН раз, после чего процедуру назначения задачи нужно будет повторить. Если нужно, чтобы компьютер систематически выключался по расписанию (в одно и то же время), то тогда нужно использовать или

Чтобы установить точное время текущей даты для выключения или перезагрузки компьютера - открываем окно «Выполнить» (Win+R ), вводим нужную команду и жмем ОК .

Время выключения (перезагрузки) компьютера нужно вводить в указанном формате.
Значения времени, естественно - у каждого своё.

В отличие от установки , правильный ввод команды при назначении времени выключения или перезагрузки компьютера не подтверждается соответствующими всплывающими окнами в трее

Из командной строки удобно создавать ОДНОРАЗОВОЕ задание для выключения или перезагрузки компьютера. Если требуется систематическое выключение компьютера по расписанию (например - в заданное время, в конце рабочего дня), то тогда нужно установить время выключения через или через

Выключение и перезагрузка компьютера
с помощью исполнительного (пакетного) файла

Исполнительные (пакетные) файлы с расширением .bat () значительно облегчают работу с командной строкой. Единожды создав такой bat-файл с текстом нужной команды, можно выполнять её простым кликом по батнику, без утомительного вызова окна командной строки и ввода в него текста команды.

Вспомним список наших команд и создадим соответствующие батники:

  1. shutdown /s /f /t 2000 или shutdown -s -f -t 2000
    (выключить компьютер через 33мин = 2000 секунд)
  2. shutdown /r /f /t 2000 или shutdown -r -f -t 2000
    (перезагрузить компьютер через 33мин = 2000 секунд)
  3. at 23:15 shutdown /s /f или at 23:15 shutdown -s -f
    (выключить компьютер сегодня, в 23:15)
  4. at 23:15 shutdown /r /f или at 23:15 shutdown -r -f
    (перезагрузить компьютер сегодня, в 23:15)
  5. shutdown /a или shutdown -a
    (отменить команду на выключение/перезагрузку компьютера)

Чтобы создать исполнительный (пакетный) батник - открываем блокнот, копируем (пишем) в него нужную строку команды и сохраняем файл с расширением.bat. Для примера создадим два файла - файл «Выключение.bat» и файл «Отмена.bat». В первый файл запишем строку «shutdown /s /f /t 2000 » (без кавычек), во второй - строку «shutdown /a » (без кавычек). Клик по первому файлу будет давать команду на выключение компьютера через 33мин = 2000 секунд. Клик по второму файлу будет отменять команду на выключение компьютера через 33мин = 2000 секунд. Таким образом, мы получим два файла, кликая по которым будем иметь тот-же эффект, что и в случае вызова со вводом в неё нужной команды.

Все очень просто, и - это гораздо удобнее, чем командная строка. К тому-же, этот способ даёт простор для полёта фантазии и творческой мысли. Например, можно задать таймаут в 28800 сек. (28800 сек = 8 часов = длина рабочего дня), положить файл «Выключение.bat» в папку автозагрузки компьютера и уже не беспокоиться о его выключении в конце рабочего дня. Потому что, каждый раз, при загрузке системы, она будет получать команду на своё выключение через 8 часов = 28800 сек. Тот же эффект даст исполнительный.bat-файл в автозагрузке, с содержанием «at 17:00 shutdown /s /f » (без кавычек). При чем, эта команда даже предпочтительней, поскольку устанавливает точное время выключения компьютера и не зависит от количества перезагрузок в течение рабочего дня.

Прикол. Если задать в bat-файле, в папке автозагрузки, таймаут 180 сек., то тогда - комп будет выключаться через 3 мин после своего запуска.

Выключение и перезагрузка компьютера
в заданное время через планировщик заданий

Планировщик заданий - особая фишка Windows . Планировщик заданий позволяет создавать и выполнять различные задания по расписанию. В нашем случае - это систематически выключать или перезагружать компьютер в указанное время. В отличие от и , планировщик заданий позволяет более гибко назначить точное время и периодичность выключения компьютера.

Чтобы настроить выключение или перезагрузку компьютера в заданное время через планировщик заданий - открываем планировщик заданий. Он находится в «Меню Пуск > Все программы > Стандартные > Служебные > Планировщик заданий»

Затем, в открывшемся окне пишем имя задачи и её описание. Здесь можно писать все, что душе угодно. Имя задачи и её описание будет потом отображаться в средней колонке планировщика после создания задачи. Я написал имя - «Выключение», описание - «Выключить компьютер» и нажал кнопку «Далее»...

В следующем открывшемся окне нужно выбрать периодичность выполнения задачи. Я выбрал - «Ежедневно». «Далее»...

В следующем открывшемся окне нужно указать дату, с которой начать выполнение задачи и время её выполнения. По-умолчанию, отсвечивают текущие значения даты и времени. Дату можно оставить без изменения (начать сегодня), а вот время нужно поставить своё. Это будет требуемое время выключения компьютера. Я поставил 17:00:00, что соответствует окончанию моего рабочего дня. Строку «Повторять каждые 1 дн.» - оставил без изменения. «Далее»...

В следующем открывшемся окне нужно установить переключатель (чекбокс) против слов «Запустить программу». «Далее»...

В следующем открывшемся окне, в строке «программа или сценарий» вводим команду «shutdown » (без кавычек), а в поле «добавить аргументы» «-s -f » (без кавычек) - для выключения. Если нужно перезагрузить компьютер, то тогда в поле «добавить аргументы» вводим «-r -f » (без кавычек). «Далее»...

Жмём кнопку «Готово». Задача на ежедневное выключение компьютера в 17:00 - создана и запущена. Проверить работу или удалить задание можно следующим образом. Запускаем планировщик, нажимаем на «Библиотека планировщика заданий» и в среднем столбике находим нужное задание (по имени). Правой кнопкой мышки кликаем по нему и в выпадающем меню выбираем нужное.

Для проверки я кликнул на «Выполнить». Компьютер отреагировал мгновенно. Работает, ура!

Выключение компьютера
Выключение компьютера из командной строки

Команда SHUTDOWN используется для завершения сеанса пользователя, перезагрузки компьютера, перевода его в спящий режим или выключения питания. При наличии соответствующих разрешений, команда может выполняться для удаленной системы.

Формат командной строки:

SHUTDOWN.EXE xx:yy ]

Если в командной строке не заданы параметры, или задан параметр /? - то на экран выдается краткая справка по использованию команды.

Вместо синтаксиса /ключ допускается использование -ключ :

SHUTDOWN.EXE [-i | -l | -s | -r | -g | -a | -p | -h | -e] [-f] [-m \\компьютер][-t xxx][-d xx:yy [-c "комментарий"]]

Параметры командной строки:

/i - Отображение графического интерфейса пользователя. Этот параметр должен быть первым.
/l - Завершение сеанса. Этот параметр нельзя использовать с параметрами /m или /d .
/s - Завершение работы компьютера.
/r - Завершение работы и перезагрузка компьютера.
/g - Завершение работы и перезагрузка компьютера. После перезапуска системы, запуск всех зарегистрированных приложений.
/a - Отмена завершения работы системы. Этот параметр можно использовать только в период ожидания.
/p - Немедленное отключение локального компьютера без предупреждения. Можно использовать с параметрами /d и /f .
/h - Переключение локального компьютера в режим гибернации. Можно использовать с параметром /f .
/e - Указание причины непредвиденного завершения работы компьютера.
/o - Переход в меню дополнительных параметров загрузки и перезагрузка компьютера. Данный параметр допустим для Windows 8 и более поздних версий. Необходимо использовать в с параметром /r.
/m \\компьютер - Имя или IP-адрес конечного компьютера.
/t xxx - Задание задержки в xxx секунд перед завершением работы компьютера. Допустимый диапазон: 0-315360000 (10 лет); значение по умолчанию: 30 секунд. Если период таймаута больше 0, применяется параметр /f .
/c "комментарий" - Комментарий с причиной перезапуска или завершения работы. Наибольшая длина - 512 знаков.
/f - Принудительное закрытие запущенных приложений без предупреждения пользователей. Параметр /f используется, если для параметра /t задано значение больше 0.
/d xx:yy Необходимо указать причину для перезагрузки или выключения. "p" означает запланированную перезагрузку или завершение работы. "u" означает, что причина определяется пользователем. Если не задано ни "p", ни "u", перезагрузка или завершение работы являются незапланированными. xx является основным кодом причины (целое положительное число, меньшее 256). yy является вспомогательным кодом причины (целое положительное число, меньшее 65536).

Для управления процессами выключения и перезагрузки, пользователь должен обладать правами администратора по отношению к управляемой системе.

Примеры использования команды SHUTDOWN:

shutdown или shutdown /? - отобразить справку по использованию команды.

shutdown /s - выключить питание компьютера через 30 секунд. Пользователю будет выдано предупреждение о запланированном выключении.

shutdown /s /t 0 - выключить питание компьютера немедленно.

shutdown /s /t 60 /m \\COMP7 - выключить питание компьютера COMP7 через 60 секунд.

shutdown /s /t 60 /m \\192.168.0.1 - выключить питание компьютера с IP-адресом 192.168.0.1 через 60 секунд. При необходимости, пользователь с правами администратора, может отменить процесс выключения командой shutdown -a

shutdown /h - перевести компьютер в режим гибернации. При выполнении команды, вся информация из оперативной памяти (процессы, программы, данные) сохраняются в специальном файле hyberfil.sys , находящемся в корневом каталоге системного диска и выполняется обычное выключение питания. При следующем включении компьютера, диспетчер загрузки Windows (BOOTMGR) выполнит восстановление состояния системы из файла hyberfil.sys . Режим перевода в гибернацию должен быть включен для данного компьютера, например командой powercfg /H on или с помощью оснастки "Электропитание" панели управления Windows. Также, необходимо учитывать, что для реализации данного режима потребуется наличие большого объема свободного места на жестком диске под копию оперативной памяти.

shutdown /l - завершить сеанс текущего пользователя. Команда завершения сеанса может быть выполнена только на локальном компьютере и только для текущего пользователя. Аналогично выполнению команды logoff без параметров.

shutdown /r - выполнить перезагрузку локального компьютера. По умолчанию, перезагрузка выполнится через 30 секунд, если не задан параметр /t

shutdown /r /o /t 0 - выполнить перезагрузку локального компьютера немедленно (t 0 , с возможностью выбора дополнительных опций (/o . После перезагрузки на экран выводится меню выбора действий, с помощью которого можно либо продолжить обычную загрузку, либо выбрать дополнительные режимы для диагностики и восстановления системы. Параметр /o допустим для операционных систем Windows 8 и более поздних.

shutdown /r /m \\192.168.0.1 - выполнить перезагрузку компьютера с IP-адресом 192.168.0.1.

shutdown /g - выполнить перезагрузку с восстановлением выполнения приложений, зарегистрированных с использованием функции API RegisterApplicationRestart . Обычно используется при обновлении системы, когда в процессе установки необходима перезагрузка с продолжением процесса инсталляции.

Выполнить перезагрузку компьютера с отображением сообщения "Плановая перезагрузка" и записью в системный журнал причины - "Запланированная", основной код - "12" (0x0B), дополнительный код - "555" (0x022b).

shutdown /i - запуск графической среды утилиты shutdown.exe . На экран выводится "Диалог удаленного завершения работы".

Для выполнения операции выключения, перезагрузки или завершения сеанса пользователя, нужно ввести имя или IP- адрес компьютера с использованием кнопки "Добавить", выбрать желаемое действие, причину и заполнить поле "Комментарий", текст из которого будет отображаться в информационном сообщении о запланированном действии. Для большинства причин, поле комментария является обязательным, и без его заполнения кнопка "OK" будет неактивной.

В Windows 7 и более поздних, удаленное выключение или перезагрузка с использованием команды shutdown , может завершаться ошибкой ”Отказано в доступе (5)” даже при наличии прав администратора и при разрешении принудительного удаленного завершения работы в локальных групповых политиках. Кроме того, при обращении к скрытым административным ресурсам C$ , ADMIN$ ... и т.п. удаленного компьютера запрашивается имя пользователя и пароль, но подключение завершается отказом в доступе. Проблема решается выводом компьютера из домашней сети и добавлением (изменением) параметра реестра, в раздел:

hklm\Software\Microsoft\Windows\CurrentVersion\Policies\System
необходимо добавить параметр LocalAccountTokenFilterPolicy , принимающий занчение dword:00000001

После занесения данных в реестр, для применения изменений требуется перезагрузка.

В дополнение:

Управление электропитанием в командной строке Windows - команда

Большинство пользователей привыкли выключать свой компьютер, используя меню «Пуск». О возможности сделать это через командную строку они если и слышали, то никогда не пытались ею воспользоваться. Все это из-за предубеждения, что она является чем-то очень сложным, предназначенным исключительно для профессионалов в сфере компьютерных технологий. А между тем, использование командной строки весьма удобно и предоставляет пользователю много дополнительных возможностей.

Чтобы выключить компьютер, используя командную строку, пользователю необходимо знать две основополагающие вещи:

  • Как вызвать командную строку;
  • Какой командой выключать компьютер.

Остановимся на этих моментах подробнее.

Вызов командной строки

Вызвать командную строку или как ее еще называют, консоль, в Windows очень просто. Делается это в два шага:


Результатом произведенных действий станет открытие окна консоли. Выглядит оно приблизительно одинаково для всех версий Windows.


Вызвать консоль в Виндовс можно и другими способами, но все они более сложные и могут отличаться в разных версиях операционной системы. Описанный выше способ является самым простым и универсальным.

Вариант 1: Выключение локального компьютера

Для выключения компьютера из командной строки используется команда shutdown . Но если просто набрать ее в консоли, выключения компьютера не произойдет. Вместо этого будет выведена справка по использованию данной команды.


Внимательно изучив справку, пользователь поймет, что для выключения компьютера необходимо использовать команду shutdown с параметром [s] . Строка, набранная в консоли, должна выглядеть так:

shutdown /s

После ее введения следует нажать клавишу Enter и начнется процесс выключения системы.

Вариант 2: Использование таймера

Введя в консоли команду shutdown /s , пользователь увидит, что выключение компьютера все еще не началось, а вместо этого на экране появилось предупреждение о том, что компьютер будет выключен через минуту. Так это выглядит в Windows 10:


Это объясняется тем, что такая задержка во времени предусмотрена в этой команде по умолчанию.

Для случаев, когда компьютер нужно выключить немедленно, или с другим временным интервалом, в команде shutdown предусмотрен параметр [t] . После введения данного параметра необходимо также указать временной интервал в секундах. Если необходимо выключить компьютер немедленно, его значение устанавливается равным нулю.

shutdown /s /t 0

В этом примере компьютер будет выключен через 5 минут.


На экран будет выведено системное сообщение о прекращении работы подобно тому, как и в случае использования команды без таймера.


Данное сообщение будет периодически повторяться с указанием оставшегося времени до выключения компьютера.

Вариант 3: Выключение удаленного компьютера

Одним из преимуществ выключения компьютера с помощью командной строки является то, что таким способом можно выключить не только локальный, но и удаленный компьютер. Для этого в команде shutdown предусмотрен параметр [m] .

При использовании данного параметра обязательным является указание сетевого имени удаленного компьютера, или его IP-адреса. Формат команды выглядит так:

shutdown /s /m \\192.168.1.5

Как и в случае с локальным компьютером, для выключения удаленной машины можно использовать таймер. Для этого нужно в команду добавить соответствующий параметр. На примере ниже удаленный компьютер будет выключен через 5 минут.

Для выключения компьютера, находящегося в сети, на нем должно быть разрешено удаленное управление, а пользователь, который будет производить это действие, должен обладать правами администратора.

Утилита командной строки shutdown является встроенной командой Windows, которая позволяет перезагрузить, выключить компьютер, перевести его в спящий режим или завершить сеанс пользователя. В этой инструкции мы покажем основные примеры использования команды shutdown в Windows (все рассмотренные команды запускаются в окне Выполнить — Win+R ->, в командной строке cmd.exe или в консоли PowerShell).

Команда shutdown имеет следующий синтаксис:

shutdown xx:yy ]

Как вы видите, у команды довольно много опций, а также есть возможность выполнять операции выключения/перезагрузки на удаленном компьютере.

Выключение Windows командой Shutdown

Для выключения ОС Windows и компьютера необходимо использовать команду shutdown с ключом /s .

Перезагрузка Windows

Чтобы перезагрузить компьютер, необходимо добавить параметр /r . После выполнения этой команды Windows корректно перезагрузится.

Завершение сеанса пользователя

Чтобы завершить текущую сессию пользователя (logout), нужно выполнить команду:

Эта команда аналогично выполнению команды logoff .

Перевод компьютера в режим гибернации

Для перевода компьютер в режим гибернации (в этом режиме все содержимое памяти записывается в файл hyberfil.sys на диск и компьютер переходит в спящий режим с пониженным электропотреблением), выполните команду:

Перезагрузка компьютера с сообщением пользователям

Вы можете предупредить всех пользователей Windows о предстоящем выключении / перезагрузки компьютера или сервера, отправив сообщение во все активные сессии (как правило эта возможность используется на терминальных RDS серверах, за которыми одновременно работают несколько пользователей, каждый в своей собственной RDP сессии).

shutdown /r /c “Этот сервер будет перезагружен через 60 секунд.”

Отложенное выключение / перезагрузка компьютера

Можно выключить или перезагрузить компьютер с определенной задержкой (по таймеру). С помощью опции /t можно указать интервал времени (в секундах), через который ПК/сервер будет перезагружен или выключен. Тем самым вы можете предоставить пользователям дополнительное время для того, чтобы успеть сохранить открытые файлы и корректно закрыть приложения. Эту опцию удобно использовать совместно с отправкой сообщения. В этом примере мы указываем, что Windows будет выключена через 10 минут (600 секунд) и информируем пользователей сообщением.

shutdown /s /t 600 /c "Сервер будет выключен через 10 минут. Сохраните свои документы!"

Пользователю будет выдано предупреждение о запланированном выключении: Ваш сеанс будет завершен .

Если задержка очень длительная, например, 100 минут (6000 секунд), то вместо предупреждающего окна появляется всплывающее сообщение в нижнем правом углу экрана: «Ваш сеанс будет завершен. Работа Windows будет завершена через 100 мин ».

Отмена выключения / перезагрузки компьютера

После запуска команды выключения или перезагрузки Windows, по умолчанию утилита shutdown ожидает 60 секунд, не выполняя никаких действия. Администратора может отменить перезагрузку или выключение устройства, если в течении этого времени успеет выполнить команду:

После отмены выключения появится всплывающее сообщение в нижнем правом углу экрана: «Выход из системы отменен. Запланировано завершение работы отменено ».

Перезагрузить компьютер немедленно

Чтобы выключить или перезагрузить компьютер немедленно, не ожидая стандартные 60 секунд, нужно указать значение 0 для параметра /t. Например, для немедленной перезагрузки компьютера:

shutdown /r /t 0

Очень важный ключ /f . Я использую его практически всегда при выключении или перезагрузки серверов Windows. Данный атрибут обеспечивает принудительное завершение всех запущенных программ и процессов, не ожидая подтверждения от пользователя (не будем же мы ждать подтверждения закрытия программ от всех пользователей на терминальном сервере, его можно просто не дождаться).

Следующая команда выполнит перезагрузку компьютера с автоматическим запуском всех зарегистрированных приложений после перезагрузки (имеются в виду приложения, зарегистрированные в системе с использованием функции API RegisterApplicationRestart).

Запуск команды shutdown на удаленных компьютерах

Вы можете перезагрузить удаленный компьютер по сети, для этого у вас должен быть к нему сетевой доступ, а учетная запись, из-под которой запускается команда shutdown должна входить в группу локальных администраторов на удаленном компьютере (сервере):

shutdown /r /t 120 /m \\192.168.1.100

Если все указанные условия выполняются, но при выполнении команды shutdown появляется ошибка ”Отказано в доступе (5)”, на удаленном компьютере нужно (C$, ADMIN$), изменив значение параметра LocalAccountTokenFilterPolicy на 1.

reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System" /v "LocalAccountTokenFilterPolicy" /t REG_DWORD /d 1 /f

Если вам необходимо удаленно перезагрузить множество компьютеров, их список можно сохранить в текстовый файл и запустить удаленную перезагрузку всех компьютеров с помощью такого PowerShell скрипта:

$sh_msg = "Ваш компьютер будет автоматически перезагружен через 10 минут. Сохраните свои файлы и закройте запущенные программы"
$sh_delay = 600 # секунд
$computers = gc C:\PS\PC-list.txt
foreach ($comp in $computers)
{
& "C:\Windows\System32\SHUTDOWN.exe" "-m \\$comp -r -c $sh_msg -t $sh_delay"
}

Графический интерфейс команды shutdown

Для тех, кому не комфортно работать в командной строке, есть графический интерфейс для команды shutdown, чтобы его вызвать, наберите:

Как вы видите, в диалоге удаленного завершения работы вы можете добавить несколько компьютеров, которые нужно перезагрузить/выключить, указать текст уведомления и задать причину выключения для сохранения в журнале Windows.

Ярлык для перезагрузки компьютера

Для удобства пользователей вы можете создать на рабочем столе ярлыки для выключения или перезагрузки компьютера с нужными настройками. Такой ярлык может быть полезен для выполнения перезагрузки из RDP сессии, когда отсутствуют кнопки перезагрузки/завершения работы компьютера в меню Пуск.

Если вы хотите, чтобы ваш компьютер или сервер всегда выключался / перезагружался в определенное время, вы можете добавить команду shutdown с определенными параметрами в планировщик заданий Windows taskschd.msc.

Например, следующее задание планировщика будет ежедневно перезагружать компьютер ночью в 0:00.

$Trigger= New-ScheduledTaskTrigger -At 00:00am -Daily
$User= "NT AUTHORITY\SYSTEM"
$Action= New-ScheduledTaskAction -Execute "shutdown.exe" -Argument "–f –r –t 120"
Register-ScheduledTask -TaskName "RebootEvertyNight_PS" -Trigger $Trigger -User $User -Action $Action -RunLevel Highest –Force