Windows 10 удаление встроенных приложений через PowerShell

Хочу удалить на нескольких ПК, встроенные приложения Windows 10 через PowerShell, нарыл команды

DISM /Online /Get-ProvisionedAppxPackages | select-string Packagename

DISM /Online /Remove-ProvisionedAppxPackage /PackageName:Microsoft.MicrosoftOfficeHub_18.2002.1101.0_neutral_~_8wekyb3d8bbwe

и все работает, но только пока удаляешь с одного ПК, на втором если версия отличается то выходит ошибка. Думал использовать знак "*" типа -

DISM /Online /Remove-ProvisionedAppxPackage /PackageName:Microsoft.MicrosoftOfficeHub*

однако не работает.

Подскажите как можно унифицировать команду на удаление, чтобы независимо от версии можно было удалять?


Ответы (1 шт):

Автор решения: don Rumata

Есть отличный проект Win10 Initial Setup Script. Набор настроек для тюнинга той или иной части Windows 10.

Чем проект крут

  • Неинтерактивность. Пишем в свой скрипт нужные фунции и оно дёргается. Нахрен мышки и Visual Basic с sendkey.
  • На каждую функцию есть противоположная, которая возвращает "всё взад". Это даже прописано в правилах добавления новых фич. Хочешь добвить свою суперкрутую тюнилку - сделай и rollback для неё.
  • Всё ещё развивается. Важный пункт, потому что не надо спровождать и менйтейнирить самому.

Чем проект плох

  • Неинтерактивность. Пишем в свой скрипт нужные фунции и оно дёргается. Нет 3d лабиринтов, которые надо пролететь на космолёте, чтобы отрубить автозапуск.
  • Нет идемпотентности. Если интегрируем с ansible - всегда будет changed.
  • Нет поддержки windows 7. Какие-то общие ветки реестра безусловно будут меняться, но всё же.

Теперь конкретно по проблеме встроенных прог. Есть функция, которая называется UninstallMsftBloat. Соответственно, согласно документации, надо написать:

powershell.exe -NoProfile -ExecutionPolicy Bypass -File Win10.ps1 -include Win10.psm1 UninstallMsftBloat
→ Ссылка