Сюда по непонятной причине в перечень вредных попали архиполезные обновления,
запрещающие после определенной настройки в редакторе локальной групповой политики переход на Win10 и всей прочей мишуры, с этим переходом связанной- предложений, уведомлений etc.
Уважаемый мембер
YuS_two помог довести до ума батник, удаляющий т.н. "вредные" из массово загруженных для установки в офлайне обновлений Win7 и Win8.1. Список "вредных" каждый составляет себе сам.
[more=Общие положения] Обновления (.msu и .cab) должны лежать в директории D:\#Updates_x64\Updates_x64\. Если они лежат в другой директории, то в батнике нужно исправить путь к папке с обновлениями. Путь к файлу "черного" списка исправлять не нужно.
Батник Delete_unwanted.cmd и "черный" список Updates_unwanted.txt могут лежать в любой директории, но вместе, в одной папке.
"Черный" список должен содержать только номера КВ, по одному номеру на строку, без пробелов в конце. Пример (прописные или заглавные- роли не играет):
kb971033
kb2882822
KB2902907
Благодаря фильтру батник обрабатывает только файлы .msu и .cab.
При запуске батника он показывает список обновлений, попавших в "черный" список, и предлагает их удалить. Список можно скопировать для дальнейшего изучения или уточнения.
Возможны два варианта ответа:
"y" - найденные "вредные" обновления будут удалены;
"n" - найденные "вредные" обновления не будут удалены.
Если обновлений из "черного" списка не будет найдено, батник сообщит об этом.
Если пользователь не cделает свой выбор в течение 15сек., батник автоматически cделает выбор "n". [/more]
[more=Код]@Echo OFF
setlocal enableextensions
set "MYPATH=D:\#Updates_x64\Updates_x64\"
set SOURCE1=*.msu
set SOURCE2=*.cab
dir /b/s/a-d "%MYPATH%%SOURCE1%" "%MYPATH%%SOURCE2%" | findstr /G:Updates_unwanted.txt
if errorlevel 1 goto :not
choice /c yn /t 15 /d n /m "remove this files? "
goto :answer%errorlevel%
:answer1
for /f "tokens=*" %%i in ('dir /b/s/a-d "%MYPATH%%SOURCE1%" "%MYPATH%%SOURCE2%" ^| findstr /G:Updates_unwanted.txt') do del /q /f "%%i"
endlocal
echo Done! Unwanted Updates really deleted!
pause&&exit
:answer2
echo Exit&&pause&&exit
:not
echo no files to delete&&pause&&exit
:answer255
echo ERROR!!!
exit /b[/more]
Проверен неоднократно, работает. Единственное, что не решено- заставить батник работать с любыми путями к папке с обновлениями без корректировки кода, по принципу Javelin "выстрелил и забыл" ("кинул в любую папку с обновлениями и запустил").