Записки IT специалиста

Удаленное выключение компьютера powershell

Добрый день! Уважаемые читатели и подписчики IT блога Pyatilistnik.org. В прошлой статье мы разобрали методы перезагрузки Windows из PowerShell. Сегодня я хочу логически закончить эту статью и показать вам методы, позволяющие вам выключить компьютер без мышки используя оболочку PowerShell и старую, добрую командную строку. Я вам покажу, как вы можете создать себе ярлык или exe файл, выполняющий данную задачу.

Логично, что большинство людей всегда для завершения работы за компьютером будут использовать графические окна и мышку, это правильно, так как это проще и быстрее, но бывает ряд случаев, что вы как продвинутый пользователь или тем более системный администратор, просто обязаны уметь выполнять все задачи без GUI интерфейса. Вот вам примерный список ситуаций:

  • Вам как системному администратору может выпасть честь работать с Windows Server Core, которая не имеет графического интерфейса и если вам вдруг нужно завершить работу такого сервера или виртуальной машины для обслуживания, вы обязаны это уметь.
  • Вторая ситуация может возникнуть, на компьютерах, где политиками или иными методами была выключена возможность завершать работу компьютера. Вот вам пример, что есть только пункт «Выход«.

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

Графическая оболочка

На самом деле «проблема» решается не просто, а очень просто. Выйдя на рабочий стол достаточно нажать Alt+F4 чтобы получить стандартный диалог завершения работы.

rdp-shutdown-003.jpg

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

rdp-shutdown-004.jpg

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

2]Перезагрузите с помощью Windows PowerShell.

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

Первый шаг — запустить программу Windows PowerShell, а затем ввести команду:

Оттуда введите для принудительного полного перезапуска системы.

Теперь, если вы хотите узнать о других командах, введите /? и нажмите клавишу Enter на клавиатуре.

Ошибка «Невозможно инициировать завершение работы системы, так как компьютер используется другими пользователями»

может завершиться ошибкой:

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

Для принудительного выключения укажите опцию -Force:

Дополнительные параметры shutdown

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

shutdown /?

ALT+F4

Сочетание клавиш Alt+F4 вызывает окно, в котором можно выбрать вариант завершения работы компьютера.

выключение по ALT+F4

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

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

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

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

Автоматизируем процесс с помощью создания ярлыков

Также вы можете легко оформить нужную вам команду в виде ярлыка, размещённом на рабочем столе. Затем, когда вам необходимо выполнить указанную операцию, будет достаточно кликнуть по ярлыку, и команда будет выполнена.

Для осуществления этой операции выполните следующее:

Скрин создания ярлыка

  1. Наведите курсор на свободное место на рабочем столе, нажмите правую клавишу мыши;
  2. Выберите «Создать» — «Ярлык»;
  3. В поле «Укажите расположение объектов» введите нужную команду с ключами, а затем нажмите на «Далее»;
  4. Выберите имя для вашего ярлыка, затем он будет размещён на рабочем столе для дальнейшего использования.

Adblock
detector