Как использовать PowerShell для запуска обновлений Windows
Компьютеры существуют, чтобы облегчить нашу жизнь. Они могут делать такие вещи, как вычислять сложные уравнения и помогать нам связываться с теми, кто находится за тысячи километров. Еще один способ, с помощью которого компьютеры могут облегчить нашу жизнь, заключается в простом использовании компьютера. Например, современные компьютеры могут быть запрограммированы на выполнение длинных списков задач при минимальном вводе данных пользователем. Windows PowerShell — одна из таких программ автоматизации. Он может выполнять такие действия, как установка обновлений Windows, без обычных хлопот.
Шаг 1
Создайте новый файл Блокнота. Нажмите значок Windows в левом нижнем углу экрана и введите Блокнот, чтобы открыть новый документ.
Шаг 2
Скопируйте и вставьте следующий текст в документ. Сохраните документ как «WindowsUpdate.ps1» без кавычек. Закройте документ.
function Get-WIAStatusValue($value) { switch -exact ($value) { 0 {"NotStarted"} 1 {"InProgress"} 2 {"Succeeded"} 3 {"SucceededWithErrors"} 4 {"Failed"} 5 {" Прервано"} }
$needsReboot =$false $UpdateSession =New-Object -ComObject Microsoft.Update.Session $UpdateSearcher =$UpdateSession.CreateUpdateSearcher()
Write-Host "- Поиск обновлений" $SearchResult =$UpdateSearcher.Search("IsAssigned=1 и IsHidden=0 и IsInstalled=0")
Write-Host " — найдено [$($SearchResult.Updates.count)] обновлений для загрузки и установки" Write-Host
foreach($Update in $SearchResult.Updates) { # Добавить обновление в коллекцию $UpdatesCollection =New-Object -ComObject Microsoft.Update.UpdateColl if ( $Update.EulaAccepted -eq 0 ) { $Update.AcceptEula() } $UpdatesCollection. Добавить ($ Обновление) | вне нуля
Загрузить Write-Host " + Загрузка обновления $($Update.Title)" $UpdatesDownloader =$UpdateSession.CreateUpdateDownloader() $UpdatesDownloader.Updates =$UpdatesCollection $DownloadResult =$UpdatesDownloader.Download() $Message ="- Загрузить {0}" -f (Get-WIAStatusValue $DownloadResult.ResultCode) Write-Host $message
Install Write-Host " - Установка обновления" $UpdatesInstaller =$UpdateSession.CreateUpdateInstaller() $UpdatesInstaller.Updates =$UpdatesCollection $InstallResult =$UpdatesInstaller.Install() $Message ="- Install {0}" -f ( Get-WIAStatusValue $DownloadResult.ResultCode) Write-Host $message Write-Host
$needsReboot =$installResult.rebootRequired
Р>
if($needsReboot) { перезагрузить-компьютер }
Шаг 3
Нажмите кнопку Windows еще раз и введите «powershell» без кавычек. Щелкните правой кнопкой мыши значок Windows PowerShell, появившийся в поле поиска, и выберите "Запуск от имени администратора".
Шаг 4
Введите следующее, если вы впервые запускаете сценарий Windows PowerShell:«set-executionpolicy remotesigned». Это позволит Windows PowerShell запускать сценарии, написанные вами самостоятельно или подписанные доверенным издателем. Нажмите Ввод. Введите "Y" для подтверждения и нажмите "Enter".
Шаг 5
Введите полное местоположение файла документа, который вы только что создали, в окне PowerShell. Например, введите «C:\users\name\documents\windowsupdate.ps1».
Шаг 6
Нажмите Ввод." Теперь скрипт будет выполняться, и обновления будут найдены, загружены и установлены без вашего участия. Вы можете запускать этот сценарий так часто, как хотите, чтобы проверять и загружать новые обновления Windows. Ваш компьютер может запросить перезагрузку после завершения обновлений.
Совет
Следите за окном PowerShell, чтобы следить за ходом ваших обновлений.
Предупреждение
Не загружайте и не запускайте скрипты, которым вы не доверяете. Вы можете серьезно повредить компьютер.