Перезагрузите компьютер и удерживайте скрипт

Я запускаю сценарий Powershell, который требует перезагрузки в середине сценария. После перезагрузки, скрипт выполняет некоторые команды (которые не могут быть выполнены до перезагрузки!). Я перезагружаю компьютер с помощью Restart-Computer, и перезагрузка начнется автоматически. Однако первые команды после перезагрузки будут выполнены до!

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

Restart-Computer -Force
"This is some content" >> C:UsersMeDesktopLog.txt

в приведенном выше примере компьютер перезагрузится, но текстовый файл (с "это некоторое содержимое") также будет создан. Я хочу перезагрузить компьютер без создания текстового файла. Так что без продолжения сценария. Теперь я делаю это с Start-Sleep, но там должен быть лучший способ..?

спасибо.

2
задан Jente
04.01.2023 17:49 Количество просмотров материала 2812
Распечатать страницу

2 ответа

Restart-Computer -Force
Wait-Event -timeout <int>
"This is some content" >> C:\Users\Me\Desktop\Log.txt

это будет ждать, пока он не достигнет указанного таймфрейма.

вы также можете использовать приведенную ниже команду wait-process и указать powershell в качестве программы для ожидания. Это будет пауза скрипта, пока PowerShell закрывается на перезагрузку.

Restart-Computer -Force
Wait-Process PowerShell
"This is some content" >> C:\Users\Me\Desktop\Log.txt
0
отвечен Cory Lundgren 2023-01-06 01:37

Я сделал функцию перезагрузки, которая включает в себя запуск сна 60 секунд. Таким образом, я уверен, что после выполнения команды Restart-Computer ничего не происходит.

-1
отвечен Jente 2023-01-06 03:54

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх