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

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

Я управляю несколькими комнатами команд Microsoft. Они делают ночную перезагрузку и иногда остаются без сети. Среда, в которой они находятся, очень заблокирована, поэтому трафик ICPM не допускается. Я надеюсь создать скрипт, который будет запускаться с ipconfigзадержкой при запуске, а затем инициировать перезагрузку, если адаптер Ethernet обнаружит, что Media Disconnected. Как это будет выглядеть?

FWIW, это физические машины. Мне нужна помощь с тем, как составить сценарий и парсить. Я не очень хорошо знаком с синтаксисом Powershell или CMD

решение1

Следующий код должен перезагрузить ваш компьютер, если интерфейс, заданный в переменной $interfaceName, находится в состоянии «Отключен».

$interfaceName = "Ethernet"
$interfaceState = (Get-NetAdapter | ? { $_.Name -eq $interfaceName}).Status
if($interfaceState -eq "Disconnected"){
    Restart-Computer
}

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

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

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

Связанный контент