Добрый день, в этой статье я покажу 2 скрипта в двух программах как установить определенное обновления ПО.
В моем случае надо было установить Fix, чтобы Svchost.exe не жрал всю память на компах с 2гб ОЗУ или меньше. Остальные компы не зависают, а продолжают работать, но я разворачивал все равно на все 7ки
Так начнем, я написал bat и скрипт в powershell. И покажу как они работают, надеюсь будут полезны. Приступим
Bat файл
Данный .bat файл при запуске определяет разрядность ОС и устанавливать наше обновление ПО с помощью wusa без участия пользователя и без перезагрузки. Далее с помощью psexec вы можете спокойно запустить данный .bat на удаленные пк.
IF NOT "%ProgramFiles(x86)%" == "" (
echo INFO: fix for Windows x64
wusa.exe \\nn-sce001\Distrib\Drivers\Update\Windows6.1-KB3050265-x64.msu /quiet /norestart
) else (
echo INFO: Fix for Windows x32
wusa.exe \\nn-sce001\Distrib\Drivers\Update\Windows6.1-KB3050265-x86.msu /quiet /norestart
)
powershell
Вот тут как новичок в скриптах мне пришлось помучаться, но получилось все тоже самое. Только более замудренно.
Тут смысл тот же самый, но думаю объяснить будет попроще. DR - это наша переменная она получает с кода Test-Path значение True или false (т.е есть ли в системе папка Program Files (x86),
и если правда, то выполняется первое условие.
$DR = Test-Path -Path("C:\Program Files (x86)")
If ($DR -eq $True)
{
echo INFO: fix for Windows x64
wusa.exe \\nn\NETLOGON\Windows6.1-KB3050265-x64.msu /quiet /norestart
}
else
{
echo INFO: Fix for Windows x86
wusa.exe \\nn\NETLOGON\Windows6.1-KB3050265-x86.msu /quiet /norestart
}
}
Исаев В.О
|