Скрипт на выключение компьютера windows 10

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

Содержание:

  • Задание планировщика для автоматической перезагрузки (выключения) Windows
  • Перезагрузка (выключение) Windows компьютеров с помощью групповых политик

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

[datetime]$RestartTime = '17:00'
[datetime]$CurrentTime = Get-Date
[int]$WaitSeconds = ( $RestartTime - $CurrentTime ).TotalSeconds
shutdown -r -t $WaitSeconds

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

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

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

Откройте консоль Task Scheduler (
taskschd.msc
) и запустите мастер создания задания: Action -> Create Basic Task.

Задайте имя задания: RebootMonday

Настройие расписание запуска задания. В нашем примере это еженедельное задание (Weekly), которое запускается каждый понедельник.

Расписание запуска

Выберите Start a program. Будем запускать встроенную команду shutdown.exe для перезагрузки с параметрами:

Program:
%SYSTEMROOT%\System32\shutdown.exe

Add arguments (optional):
/r /f /t 120 /d p:0:0 /c "Автоперезагрузка по понедельникам. Для отмены: shutdown.exe /a"

Команда перезагрузки shutdown.exe компьютера в планировщике

  • /r
    — перезагрузка
  • /f
    – принудительно завершить все приложения
  • /t 120
    – таймаут перед перезагрузкой
  • /d p:0:0
    — добавить в Event Viewer плановую причину перезагрузки: Other (planned)

  • – вывести информационное сообщение пользователям компьютера перед перезарузкой

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

  1. Откройте свойства задания в консоли Task Scheduler
  2. Выберите опцию Run whether user is logged or not
  3. Нажмите кнопку Change User or Group и укажите System
    запуск задания планировщика от имени SYSTEM

  4. Теперь задание будет запускаться от имени NT AUTHORITY\SYSTEM.
  5. Проверьте, что задание включено.

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

Предупреждение перед автоматической перезагрузкой Windows

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

$taskName = "WeeklyAutoReboot"
$taskDescription = "Automatically reboots the server every Monday at 04:00 AM"
$action = New-ScheduledTaskAction -Execute "shutdown.exe" -Argument "/r /f /t 120 /d p:0:0 /c `"Автоперезагрузка по понедельникам. Для отмены: shutdown.exe /a`""
$trigger = New-ScheduledTaskTrigger -Weekly -DaysOfWeek Monday -At 4:00am
$principal = New-ScheduledTaskPrincipal -UserId "SYSTEM" -RunLevel Highest
Register-ScheduledTask -TaskName $taskName -Action $action -Trigger $trigger -Principal $principal

Перезагрузка (выключение) Windows компьютеров с помощью групповых политик

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

  1. Откройте консоль управления доменными GPO (
    gpmc.msc
    ), создайте новую GPO и назначьте ее на OU с компьютерами, которые нужно перезагружать/выключать по расписанию.
  2. Отредактируйте новую GPO и перейдите в раздел Computer Configuration -> Preferences -> Control Panel Settings -> Scheduled Tasks;
  3. Создайте новое задание: New -> Scheduled task (At least Windows 7);
  4. Задайте имя задания и запуск от имени SYSTEM (как описано выше)
    Создать задание планировщика в GPO

  5. На вкладке Triggers добавьте расписание для задания
    расписание запуска задания

  6. На вкладке Actions добавьте запуск команды shutdown.exe с параметрами
    команда отложенной перезагрузки

  7. Сохраните задание
  8. Обновите настройки GPO на клиенте, и проверьте что в планировщике задания появилось задание запланированной перезагрузки Windows.
    Задание перезагрузки через GPO создана на клиенте

Если нужно привязать задание автоматической перезагрузки/выключения компьютера к завершению другого задания (например, перезагрузиться после успешного окончания бэкапа), см. пример реализации в статье Как запустить задание планировщика Windows после завершения другого задания?

Загрузить PDF

Загрузить PDF

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

  1. Step 1 Откройте Блокнот.

    Эта бесплатная программа для редактирования текста включена во все версии Windows. В Блокноте можно написать простейший код, который выключит компьютер.

    • Чтобы открыть Блокнот, нажмите «Пуск» > «Программы» > «Стандартные» > «Блокнот». Также можно нажать «Пуск», ввести блокнот и нажать Enter.
  2. Step 2 Введите shutdown.exe -s на первой строке.

    Это команда выключения компьютера.

  3. Step 3 Добавьте таймер с помощью параметра -t.

    По умолчанию компьютер выключится через 30 секунд. Чтобы изменить это время, добавьте параметр -t, а затем введите число секунд.

    • Например, чтобы компьютер выключился через 45 секунд, введите shutdown.exe -s -t 45.
    • Чтобы компьютер выключился немедленно, введите shutdown.exe -s -t 00.
  4. Step 4 Добавьте сообщение.

    Чтобы перед тем, как компьютер выключится, на компьютере отобразилось сообщение, используйте параметр -c. В нашем примере введите shutdown.exe -s -t 45 -c "текст сообщения". Текст нужно заключить в кавычки.[1]

    • Например, в сообщении можно указать, в течение какого времени компьютер выключится; для этого введите shutdown.exe -s -t 45 -c «Компьютер выключится через 45 секунд».
  5. Step 5 Нажмите «Файл» > «Сохранить как».» src=»https://www.wikihow.com/images_en/thumb/5/5b/Shut-Down-a-Computer-Using-Notepad-Step-5-Version-2.jpg/v4-460px-Shut-Down-a-Computer-Using-Notepad-Step-5-Version-2.jpg» width=»460″ height=»347″ loading=»lazy»></p>
<div class= Картинка с сайта: ru.wikihow.com

Файл нужно сохранить в формате BAT (пакетный файл), запуск которого приведет к выключению компьютера.

  • Step 6 Откройте меню «Тип файла» и выберите «Все файлы (*.

    *)». Теперь можно изменить тип файла.

  • Step 7 Удалите расширение .txt в конце имени файла.

    Вместо него введите .bat.

    • Если расширение (в виде трех букв) не отображается, в сети найдите информацию о том, как это сделать.
  • Step 8 Сохраните файл.

    Будет создан файл с расширением .bat; значок этого файла будет отличаться от значка текстового файла.

  • Step 9 Запустите созданный файл, чтобы выключить компьютер.

    Процесс выключения произойдет в соответствии с правилами, которые вы задали.

    • Перед тем как выключить компьютер, сохраните открытые файлы.

    Реклама

  • Предупреждения

    • Если вы решили над кем-нибудь подшутить, делайте это на свой страх и риск. Помните, что на вас могут обидеться или рассердиться.

    Реклама

    Об этой статье

    Эту страницу просматривали 85 547 раз.

    Была ли эта статья полезной?

    Рассказываем, как поставить таймер выключения компьютера на Windows. Это позволит настроить работу ПК так, чтобы он включался самостоятельно по расписанию.

    Для чего нужен

    Как установить

    Как отключить

    Чек-лист

    Для чего нужен

    Как установить

    Как отключить

    Чек-лист

    Операционная система Windows довольно гибкая в плане настроек, поэтому многое можно сделать, используя встроенные средства и утилиты. А со сторонними приложениями возможности практически безграничные. Если вам необходимо поставить таймер выключения компьютера, проще всего воспользоваться специальной системной командой или установить приложение-планировщик.

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

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

    С этим и поможет таймер выключения — встроенная в Windows утилита, управляющая электропитанием.

    Как установить таймер выключения на Windows: 7 способов

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

    1. Через команду «Выполнить»

    Функция «Выполнить» позволяет быстро отдать системе нужную команду при условии, что вы знаете, как эту команду сформулировать на понятном для утилиты языке.

    1. Откройте окно «Выполнить» через сочетание клавиш Win+R.

    2. Далее пропишите или скопируйте текст shutdown -s -t 1800.

    На человеческом языке это значит, что компьютер должен выключиться через 1800 секунд (то есть 30 минут). Число 1800 вы можете поменять на любое другое. Например, три часа — это 10 800 секунд.

    Скриншот окна утилиты «Выполнить»

    Самый простой способ поставить таймер выключения на Windows — через утилиту «Выполнить»Источник: Hi-Tech Mail

    2. Через командную строку

    Использовать команду shutdown для установки таймера выключения можно не только через меню «Выполнить», но и в командной строке Windows.

    1. Доступ к командной строке можно получить через меню «Пуск». Введите название этого инструмента (или воспользуйтесь любым другим способом из нашего материала «Как открыть командную строку в Windows: 23 проверенных способа») и запустите программу от имени администратора.

    2. Команда та же: shutdown -s -t 1800, где 1800 — время в секундах. При необходимости поменяйте значение на любое другое. Нажмите Enter.

    3. После ввода команды появится уведомление о предстоящем отключении.

    Скриншот экрана ноутбука с поиском командной строки Windows

    Командная строка WindowsИсточник: Hi-Tech Mail

    3. Через PowerShell

    PowerShell — это почти то же самое, что и командная строка, но с расширенным инструментарием. Правда, нас он в рамках сегодняшней темы интересует мало. Способ практически ничем не отличается от предыдущего.

    1. Найдите PowerShell в меню «Пуск», запустите от имени администратора.

    2. Пропишите команду shutdown -s -t 1800, изменяя при желании количество секунд.

    Скриншот окна ноутбука с Windows PowerShell

    Windows PowerShellИсточник: Hi-Tech Mail

    4. Через ярлык на рабочем столе

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

    Скриншот экрана ноутбука с окном создания ярлыка на рабочем столе

    Через ярлык на рабочем столеИсточник: Hi-Tech Mail
    1. Нажмите правой кнопкой мыши по незанятому месту на рабочем столе и выберите «Создать» > «Ярлык».

    2. Система попросит указать путь к нужному объекту. Прописываем его, по желанию редактируя показатель секунд: C:\Windows\System32\shutdown.exe -s -t 1800.

    3. В следующем окошке задаем имя «программы», в данном случае «Таймер полчаса». Далее нажмите ОК, чтобы завершить создание ярлыка.

    Теперь достаточно двух щелчков, чтобы выключить ПК по расписанию. Для красоты можете выбрать тематический значок в разделе «Свойства» — «Ярлык» — «Сменить значок…».

    Скриншот экрана ноутбука с открытым ярлыком "Таймер полчаса"

    Изменить настройки или вовсе отключить таймер выключения компьютера можно в любой момент. Для этого нажмите на ярлык правой кнопкой мыши, выберите «Свойства» и пропишите нужное количество секунд или установите параметр -a после shutdown.exe.Источник: Hi-Tech Mail

    5. Через bat-файл

    Пакетный файл с расширением .bat, или просто «батник» — это текстовый документ, включающий определённую последовательность команд. С его помощью пользователи могут настроить и отключение компьютера по расписанию.

    1. Создаём на рабочем столе текстовый документ и называем его так, чтобы было понятно, за что он отвечает. Внутри пишем привычную команду shutdown.exe -s -t 1800. Закрываем документ, сохраняем его.

    Скриншот окна "Таймер полчаса" через Блокнот

    Таймер полчасаИсточник: Hi-Tech Mail
    1. Теперь надо включить отображение файловых расширений (если оно у вас выключено). Для этого идем в меню «Пуск», ищем там «Отображать расширения файлов».

    Скриншот экрана ноутбука с опцией "отображать расширение файлов"

    Отображать расширение файловИсточник: Hi-Tech Mail
    1. Вы попадете в раздел «Для разработчиков». Ищем заголовок «Проводник», жмём кнопку «Показать параметры» справа от первого пункта.

    Скриншот окна параметров на ноутбуке

    Раздел «Для разработчиков»Источник: Hi-Tech Mail
    1. Снимаем галочку, указанную на картинке ниже, применяем изменения.

    Скриншот окна настроек "Параметры Проводника"

    Параметры ПроводникаИсточник: Hi-Tech Mail
    1. Вернёмся к нашему текстовому документу. Чтобы сделать его «батником», нужно «переименовать» расширение, которое указано после точки. Измените его с txt на bat и подтвердите операцию. Файл получит новую иконку и способность выключать компьютер через заданное время.

    Скриншот окна "Переименование" на рабочем столе ноутбука

    ПереименованиеИсточник: Hi-Tech Mail

    Если добавите bat-файл в автозагрузку, пропадет необходимость каждый раз его запускать. Это удобно, если выключать компьютер по таймеру нужно ежедневно. Каталог с автозапуском открывается через окошко «Выполнить» (Win+R), где нужно ввести команду shell: Startup. Далее остается только закинуть «батник» в появившуюся папку.

    6. Через планировщик Windows

    В Windows встроена такая утилита, как «Планировщик заданий». Он позволяет в определённое время запускать нужные скрипты. Такой скрипт мы и создадим.

    1. Войти в планировщик можно через меню «Пуск». Просто наберите название в поисковой строке.

    Скриншот окна ноутбука с поиском планировщика заданий

    Планировщик заданийИсточник: Hi-Tech Mail
    1. В списке справа выбираем «Создать простую задачу». Выдаем ей название, описание можно не сочинять.

    Скриншот окна "Планировщика заданий" на ноутбуке

    Создать простую задачуИсточник: Hi-Tech Mail
    1. Раздел «Триггер» позволяет указать, как часто мы будем запускать задачу. Пока выберем «Однократно», но некоторым будет удобнее сделать так, чтобы компьютер выключался каждый день, например, в 19 часов. Для этого, соответственно, нужно указать «Ежедневно».

    Скриншот окна "Планировщика заданий" с разделом "Триггер"

    Раздел «Триггер»Источник: Hi-Tech Mail
    1. На следующей странице задаем время выключения. Тут не надо пересчитывать часы в секунды, всё доступно и понятно.

    Скриншот окна "Планировщика заданий", где можно задать время выключения

    Задаем время выключенияИсточник: Hi-Tech Mail
    1. Раздел «Действие» оставляем без изменений, в подразделе «Запуск программы» прописываем shutdown в поле «Программа или сценарий» и -s в поле «Добавить аргументы».

    Скриншот окна "Планировщика заданий" с разделом зпуска программы

    Запуск программыИсточник: Hi-Tech Mail
    1. На финальном экране сверяем данные и выбираем «Готово». В заданное время питание компьютера отключится.

    7. Через сторонние программы

    Если вам не понравился ни один из вышеописанных способов в силу их сложности, советуем скачать таймер отключения в виде отдельной программы. Найти такие можно как в магазине приложений Microsoft Store, так и на доверенных сайтах с софтом.

    В Windows Store напишите в строке поиска shutdown timer. Варианты в основном платные, но есть и такие программы, за которые платить не нужно, например, Shutdown Timer Classic от разработчика Lukas Langrock. Скачать ее также можно на GitHub.

    Скриншот окна настроек ноутбука с приложением Shutdown Timer Classic

    Через специальную утилиту можно установить таймер не только на выключение Windows, но также на переход в спящий режим или гибернациюИсточник: Hi-Tech Mail

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

    Скриншот окна Shutdown Timer на ноутбуке

    Shutdown TimerИсточник: Hi-Tech Mail

    Чтобы узнать, какие еще таймеры отключения присутствуют на рынке, промотаем страницу Shutdown Timer Classic вниз, в раздел «Пользователи также просматривают». Там собраны все похожие программы с указанием рейтинга. Скачаем самую высоко оцененную — Auto Device Shutdown. Ее оценка составляет 5 баллов.

    Скриншот окна настроек ноутбука с разделом «Пользователи также просматривают»

    Раздел «Пользователи также просматривают»Источник: Hi-Tech Mail

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

    Скриншот окна приложения Shutdown Timer Classic

    Завершение работыИсточник: Hi-Tech Mail

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

    Как отключить таймер автовыключения компьютера

    Рассмотрим, как отменить запланированное отключение питания теми же способами, какими мы его настраивали.

    Через команду «Выполнить» Введите команду shutdown -a
    Через командную строку Введите команду shutdown -a
    Через PowerShell Введите команду shutdown -a
    Через ярлык В свойствах ярлыка удалите всё, что идет после shutdown.exe, и вместо этого пропишите -a
    Через bat-файл Откройте файл блокнотом, удалите весь текст, пропишите команду shutdown.exe -a, сохраните файл и запустите его заново
    Через планировщик Откройте планировщик, найдите раздел «Библиотека планировщика заданий», нажмите на задачу отключения правой кнопкой мыши и выберите «Отключить»

    Чек-лист для пользователя: как поставить таймер выключения ПК на Windows

    Для удобства тезисно оформили весь гайд в виде списка.

    1. В Windows встроена возможность отключить компьютер по расписанию.
    2. Задать время до выключения компьютера можно в меню «Выполнить», командной строке и PowerShell с помощью команды shutdown -s -t, где после t нужно задать время в секундах.
    3. Также выключить компьютер по расписанию позволяют ярлык на рабочем столе, bat-файл и «Планировщик задач Windows», но усилий тут понадобится больше, чем в предыдущем пункте.
    4. Бесплатные программы на GitHub или в магазине приложений Windows обладают минимальной функциональностью, необходимой для выключения компьютера по расписанию.
    5. Таймер автовыключения всегда можно отключить тем же способом, каким вы его включили.

    Время на прочтение3 мин

    Количество просмотров23K

    Ценность этой статьи скорее не в самом решении, а в напоминании как можно быстро решать простые задачи.

    Но если Вам нужно простое решение — пожалуйста:

    Сохраните в CMD эти строки и после запуска через 20 минут (1200 секунд) компьютер перейдет в спящий режим. Итого программа заняла 73 байт:

    ping 127.0.0.1 -n 1201 > nul
    rundll32 powrprof.dll,SetSuspendState 0,1,0

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

    shutdown -s -t 00

    Использую это перед сном, включая свое любимое онлайн радио «на сон грядущий» так же из командной строки, о чём будет рассказано под катом.
    Кому все таки стало любопытно, прошу под кат. Ссылки на готовые скрипты в конце статьи.

    В большинстве своем всё новое это хорошо забытое старое.

    Сначала рассмотрим что делают эти строки:

    Пингуем IP адрес который всегда доступен (разве что Ваш firewall настроен «с выдумкой»). Интервал по умолчанию 1000 мс = 1 секунда. Ключ -n задает количество повторений 20 минут х 60 секунд = 1200 + 1 (т.к. первый пинг возвращается менее чем через 1 мс). А конструкция > nul говорит интерпретатору что стандартный вывод будет направляться в nul дабы избавиться от ненужного вывода на экран.

    ping 127.0.0.1 -n 1201 > nul

    Происходит вызов программы rundll32.exe, которая позволяет выполнить подпрограмму из динамической библиотеки. В данном случае SetSuspendState с нужными нам параметрами. Подробное описание в MSDN.

    rundll32 powrprof.dll,SetSuspendState 0,1,0

    Следует заметить, что если у вас включен гибридный режим сна (Hibernate), то войдет он именно в этот режим. Отключить его можно запустив от имени администратора следующее:

    powercfg -hibernate off

    Под спойлером еще несколько применений для примера…

    Запуск моего любимого интернет радио через Winamp в отдельном потоке.

    start winamp http://cast.loungefm.com.ua:8000/acoustic128

    Заблокировать рабочую станцию (WIN + L).

    rundll32.exe User32.dll,LockWorkStation

    Гибридный режим сна (Hibernate).

    rundll32.exe PowrProf.dll,SetSuspendState

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

    shutdown.exe -r -t 00

    Старая шутка с включением режима мыши для левши (меняются левая и правая кнопка мыши).

    rundll32 user32.dll,SwapMouseButton

    Отменить шутку с мышкой можно вызвав диалог настройки мыши и отключив эту функцию.

    rundll32 shell32.dll,Control_RunDLL main.cpl,@0,1

    Переместить курсор в левый верхний угол.

    rundll32 user,SetCursorPos

    Расположить все не свернутые окна каскадом.

    rundll32 user,CascadeChildWindows

    Расположить все не свернутые окна по вертикали.

    rundll32 user,TileChildWindows

    Еще много интересного можно найти на просторах интернета и придумать, вспоминая документацию по WinAPI функциям.

    Есть всем известное выражение которое многим нравится:

    Лень – двигатель прогресса.

    Немного истории:

    Еще в далёком 2003 году для выключения ПК по таймеру на скорую руку писалась простенькая программка. Писал сам, ибо знакомых программистов и доступа к интернету в то время у меня не было. Уверен, что много таких же «домашних программистов», которые купив или нарезав на болванки MSDN изучали программирование под Windows ночи напролёт. По случаю написания статьи отрыл ее в старом архиве на родительском ПК. Выглядела она незатейливо, но задачу свою выполняла. Как оказалось, даже сейчас ей пользуются несколько моих знакомых.

    На чём она была написана уже и не помню (VC, VB, Delphi или Assembler). Размер ее был тоже не большим, но все же 16 166 против 47 байт не идут ни в какое сравнение.
    И когда пару дней назад мне понадобился такой же функционал я полез искать похожий софт. Каково же было моё разочарование, когда я нашел кучу программ в среднем от 1,1 Мб до огромных монстров 15,2 Мб размером. Естественно совесть мне не позволила даже в песочнице запустить эту ересь. Понимая что мне нужна задержка выполнения в 20 минут и вызов одной лишь процедуры я вспомнил про rundll32.exe, полез в инет и не ошибся. В итоге решение было найдено за 1 минуту.

    Мораль:

    Зачастую для решения простых задач нам не нужен сторонний софт. Достаточно просто зайти в поисковик и найти простое решение задачи, которое в 98,785% уже есть в свободном доступе. Конечно же нужно упомянуть и другой путь, для настоящих ИТ-шников, включить воображение, зайти в мануалы MSDN и воспользоваться готовым функционалом ОС. Согласитесь, приятно пользоваться простыми и элегантными решениями, но вдвойне приятнее когда до их решения ты дошел своим умом.

    Как и обещалось ранее ссылки:
    Скрипты таймеров выключения, запуска радио и перехода в спящий режим — radio_sleep_scripts.zip
    Вдруг будет интересна моя старая поделка — ExitXP.exe


    Надеюсь мой первый пост Вам понравился. Буду рад замечаниям и предложениям касательно статьи. Хотелось бы увидеть Ваши интересные решения похожих задач в комментариях. Спасибо что уделили время и прочли до конца.

    With this little two-line batch script, you can simply shut down a computer with a Windows operating system:

    @echo off
    %SYSTEMROOT%\system32\shutdown.exe -s -t 0

    To use the script, just create a new blank plain text file, copy the 2 lines into it and change the file extension from «txt» to «bat».

    When you then double-click on this file, the computer will be automatically shut down without demand.

    Useful Extensions to the Script

    Of course, we can already use the script presented exactly as it is written there. Nevertheless, depending on your needs, you can also make some modifications and extensions to the script to get even more out of it. We would like to take a look at what is possible and how it works in these following sections:

    • Embedding in other Scripts
    • Delayed Computer Shutdown
    • Restart Computer
    • Put Computer into Hibernation or Sleep Mode
    • Treatment of open Programs and Files
    • Withdraw Command
    • Change Command
    • Manual Restart
    • User Notifications
    • List of Parameters
    • Background Information
    • Alternative Writings

    Embedding in other Scripts

    This script can be used, for example, within large batch script files requiring a long processing time. For example, batch files in which many actions are performed or a big number of programs are started and executed.

    If you want the computer to be shut down automatically after the script has been processed, it is sufficient to add the second line from the example code to the end of the long batch script as the last line. This saves the user from having to wait in front of the computer for the script to finish, as the computer will automatically shut down once the work is done, so that you do not have to care about the shutdown anymore for yourself.

    Delayed Computer Shutdown

    The 0 respectively the last parameter in the command indicates that the shutdown should be performed within 0 seconds — that means, immediately and without any time delay. Using a different number there, makes the computer shut down with a delay, as for example this call shows:

    %SYSTEMROOT%\system32\shutdown.exe -s -t 180

    Here we pass «-t 180», which means that we switch off the PC after 3 minutes (3 x 60 seconds after calling the command). By the way, the letter «t» stand for «time» here.

    The specification of the time must always be given as an integer in seconds. A maximum value of 315360000 (10 years) can be used. If we omit specifying a time (i.e. if we just write «shutdown.exe -s» without any time specification), a t-value of 30 is assumed by default, meaning the computer shuts down after half a minute.

    Aside from that, it is also important to note that the time definition is always to be understood in the form of something like a «countdown» and not in the form of an absolute time. This means that if, for example, we give the command that the computer should be shut down in one hour (3600 seconds) at 5:00 p.m., the computer will only actually be shut down at 6:00 p.m. if the computer is kept switched on the whole time remained. However, if the computer goes into standby in the meantime, let’s say at 5:10 p.m., the countdown for the shutdown is also stopped and only resumes after the computer has been switched on again. We should keep this in mind, especially when defining longer periods of time.

    Restart Computer

    The parameter «s», which we have used in all of our previous examples so far, stands for the word «shutdown». Even if the program name «shutdown.exe» does not immediately suggest it, we can also use the same program to restart our computer either immediately or after an arbitrary period of time defined by the «t» parameter. The only thing we have to change in the command that we have learned so far is to replace the parameter «s» with «r». The letter «r» stands for «restart».

    %SYSTEMROOT%\system32\shutdown.exe -r -t 0

    With this call to «shutdown.exe» we restart our computer immediately after calling the command. Of course, we can also work with a time delay this time, as the next example shows:

    %SYSTEMROOT%\system32\shutdown.exe -r -t 60

    Again we can define any time between 0 and 315360000 seconds using the (time) parameter «t». In the example, we let the computer restart exactly after 60 seconds respectively after one minute.

    Put Computer into Hibernation or Sleep Mode

    So far we have looked at the command line parameters that we can use to either shut down or restart our computer. However, beyond that, Windows can also be put either into its hibernation state or in its sleep mode to save energy but also to be able to quickly resume an existing session. These states can also be activated using a script and are useful, for example, if after executing a long script we want to continue at the same point where we left off with all open programs and files.

    The parameter to hibernate our computer is «h». Unfortunately, this parameter cannot be used in the same way as we have previously seen for «s» (shutdown) or «r» (restart). Furthermore, there is no shutdown parameter for the sleep mode available at all, so we have to proceed completely differently to activate that state.

    Since activating these states is correspondingly more complicated and would take up too much space within this tutorial, I have written a separate tutorial about activating Windows hibernation and sleep mode using a script, in which we can go into more detail than it is possible here in only one paragraph.

    Treatment of open Programs and Files

    When running a command to shut down our computer automatically, inevitably, the question arises what actually happens if we still have applications or files open at the time the shutdown should take place. The answer to this question depends on the one hand on our time delay specified via the parameter «t», on the other hand we can also consciously control the behavior by using the parameter «f» (which we have not yet introduced). In this section we would like to take a look at how this works in detail.

    Basically, if the computer is switched off, two different things can happen: Either all programs are automatically closed without any prompt and unsaved changes to files are lost, or the user is given the opportunity to save unsaved files before shutting down or restarting by displaying a message before shutting down that programs with unsaved changes are still open.

    Which of these two cases occurs depends on our call. The following table provides an overview of the different cases that can occur:

    Command Action
    shutdown -s Immediate shutdown without asking or waiting
    shutdown -s -t 0 Inquiry «Open Programs» / «Waiting for Program» / «Unsaved Changes»
    shutdown -s -t 60 Immediate shutdown without asking or waiting
    shutdown -s -f -t 0 Immediate shutdown without asking or waiting

    If we use shutdown.exe without any other parameter such as f or t, an automatic shutdown occurs without further inquiry. This means that in this case, unsaved files would be lost. The same applies if a time delay of at least one second has been defined via the t parameter (if we call «shutdown -s» without specifying t, a time delay of 30 seconds is used by default so that t is also over 0 in this case). If, on the other hand, we define an immediate shutdown without any time delay using «-t 0», a query about the unsaved files occurs by default, so that saving is still possible at the last moment. If we want to prevent this, we can additionally pass the parameter f (force stop). If this parameter is set, «-t 0» will also cause an immediate shutdown without any inquiry. For t > 0, f is automatically set and cannot be deactivated.

    I tested these calls on various computers with Windows 11, Windows 10, Windows 7 and Windows XP. Windows 11, Windows 10 and Windows 7 behaved as described in my tests. Windows XP, on the other hand, only closed programs with unsaved files without further inquiry if «f» was explicitly set. The other systems always implicitly assumed «f» to be set as soon as t was greater than 0. Unfortunately, shutdown.exe does not know any other parameter to override this behavior in order to retain the storage option even in the event of a delayed shutdown or restart.

    Although we always used the parameter «-s» (shutdown) for the example calls shown in the table, «-r» (restart) behaves the same way.

    Withdraw Command

    The (time) parameter «t» can be used to define very long waiting times until the computer is shut down or restarted. As already mentioned above, a time delay of up to ten years is possible. Only after this time has elapsed the initiated shutdown (-s) or restart (-r) will be carried out. But what can we do if, within this possibly year-long period of time, we change our mind after some time has passed and we want to withdraw the command?

    The developers of «shutdown.exe» thought of exactly this case and gave us the parameter «a» (abort). The following example shows how we can use this parameter to cancel our scheduled action:

    %SYSTEMROOT%\system32\shutdown.exe -a

    Accordingly, we simply have to call «shutdown.exe» with the sole parameter «a». This will delete the planned shutdown or restart. The «a» parameter works regardless of which of these two actions we have scheduled.

    Of course, this command only works if it is called within the time period defined by «t» and not afterwards. If we have called «shutdown.exe» with «-t 0» (immediate execution), it is always too late to abort. If, on the other hand, we have started the program with «-t 60» (60 seconds), for example, and we issue the command to abort after, for example, 30 seconds, it is not too late and the automatic shutdown or restart can still be prevented.

    Change Command

    Also if we want to change the time delay of an already scheduled shutdown, we must first call the command «shutdown.exe -a» before we can define a new time via «shutdown.exe».

    Let’s assume that we have set the shutdown time to 180 seconds from now on and now we would like to retrospectively reduce this time to just 60 seconds. One might now perhaps expect that we could simply overwrite the command by setting another time again. However, if we would use the following sequence of commands, the second command would fail because the shutdown is already set to 180 seconds and the timer is already running. Despite this second call, a shutdown would nevertheless take place only after 180 seconds.

    %SYSTEMROOT%\system32\shutdown.exe -s -t 180
    %SYSTEMROOT%\system32\shutdown.exe -s -t 60

    It would be correct like this:

    %SYSTEMROOT%\system32\shutdown.exe -s -t 180
    %SYSTEMROOT%\system32\shutdown.exe -a
    %SYSTEMROOT%\system32\shutdown.exe -s -t 60

    Here we first define a time of 180 seconds for our shutdown again. However, to delete this command, the first thing we need to do is to call «shutdown.exe -a» like we have seen in the last section. Only then we can define a new time for the shutdown (here «shutdown.exe -s -t 60»).

    Manual Restart

    Another way to «withdraw» or «undo» the shutdown command is to manually shut down or restart the computer before the time for the automatic action has been reached. Once we do this, any system shutdowns or reboots scheduled via shutdown.exe will be automatically deleted.

    User Notifications

    If we use one of the commands presented here to instruct our computer not to shut down or restart immediately, but only after a certain time delay, the countdown that has been started with this, does not just run in the background in secret. Instead, the user is given various messages during the expiring time period, which can differ depending on the length of time delay as well as the Windows version used. In general, these notifications become more intrusive the closer we get to the shutdown time.

    • For short time periods of less than 3 minutes, immediately, a small dialog window appears announcing the shutdown.
    • For time periods between 3 and 10 minutes, two small dialog windows are shown. The first dialog immediately announces the shutdown in X minutes, the second dialog reminds you again 2 minutes before the shutdown.
    • If the time delay exceeds 10 minutes, there is first a notification about the shutdown in the tray, then a further warning 10 minutes before the shutdown and, depending on the system, another dialog 2 minutes before the shutdown.

    On some versions of Windows, the last dialog box before shutdown showed a countdown of the remaining time in the tests, on other versions of Windows only the time was displayed without any count down.

    List of Parameters

    Finally, we would like to summarize all the parameters used in this tutorial as well as some other useful parameters in the following list. By clicking on «Details» you can jump to the relevant section within this tutorial where the parameter in question is described and you can find examples of how to use the parameter.

    Parameter Meaning
    -s (shutdown) Shuts the computer down. Details
    -r (restart) Restarts the computer. Details
    -h (hibernation) Puts the computer into hibernation state. Details
    -l (logout) Logs out the current user.
    -a (abort) Cancels the shutdown or restart. Details
    -t x (time) Ensures that the shutdown or restart is carried out only after x seconds. If this parameter is omitted, the action occurs after 30 seconds by default. 0 leads to an immediate execution, a maximum value of 315360000 (10 years) can be used. Cannot be used with -h. Details
    -f (force stop) Use this parameter to force potentially active applications to close without warning. Unsaved changes to files can be lost. If t is greater than 0, the -f parameter is automatically applied. Details
    -i (interface) Shows a graphical user interface that allows you to configure the shutdown manually.

    Shutdown.exe knows a few other parameters in addition to the parameters listed in this compilation, but these are not required for the purposes described here. For example, the parameter «c» (comment) can be used to define a comment regarding the restart or shutdown, or the parameter «d» can be used to specify a reason for the restart or shutdown. If you would like to find out more about these and other parameters, you can simply use the command line call «shutdown -?». With this command, shutdown.exe prints a list of all possible parameters directly to the command line. Please note that the available parameters may differ depending on the Windows version used.

    Background Information

    Our script calls the program shutdown.exe, which initiates the shutdown respectively the restart process of Windows and which can also be used to put the computer into sleep mode. This program is located in the subdirectory «system32» of the Windows folder (typically this results in the path «C:\Windows\System32»).

    However, since the system folder can have a different absolute path on each computer (depending on where Windows has been installed), instead of using the mentioned absolute path, we use the constant «%SYSTEMROOT%» instead, which always gives us the correct folder for the respective system installation of the computer on which the command is executed. After all, it would be conceivable that someone has not installed Windows on the C: drive or that the folder differs from an older Windows version to future Windows versions.

    Alternative Writings

    Usually, Windows finds the program «shutdown.exe» even without specifying a path. This allows us to shorten the command (here for an immediate shutdown) to the following line:

    shutdown -s -t 0

    Furthermore, the parameters can also be passed with a slash instead of the hyphen used in most of the examples. With this, the command mentioned would look like this:

    shutdown /s /t 0

    Generally, all of the options mentioned should work, regardless of whether you use the hyphen or the slash and regardless of whether you define the full path or not. If in doubt and to be on the safe side, you should of course try out the command on the computer on which the script is to run before using it productively.

    Понравилась статья? Поделить с друзьями:
    0 0 голоса
    Рейтинг статьи
    Подписаться
    Уведомить о
    guest

    0 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии
  • Перенос windows 10 с hdd на ssd renee becca
  • Как почистить spool windows 10
  • Как узнать скорость ссд диска windows 10
  • Как восстановить wifi на ноутбуке windows 10
  • Finance app for windows