Найти в Дзене
WindowsUsers

Winget в Windows 11(10) – создание резервного списка установленных приложений и их быстрая установка в новой системе

Оглавление
winstall
winstall

Приветствую читатели! Сегодня немного об пакетной установке программ. Цитата из оригинальной статьи MS: «Программа командной строки winget позволяет пользователям обнаруживать, устанавливать, обновлять, удалять и настраивать приложения на компьютерах с Windows 10 и Windows 11. Она является клиентским интерфейсом для службы Диспетчера пакетов Windows».

На данный момент winget по умолчанию входит в состав Windows 11 и современных версий Windows 10 в качестве Установщика приложений, и обратите внимание – не все программы пока доступны в репозиториях winget, не буду затягивать перейдем к сути:

Первым делом вам надо проверить наличие у вас Установщика Приложений и обновить его в Microsoft Store до последней версии.

Установщик Приложений
Установщик Приложений

Просмотр списка установленных приложений и какие из них доступны для последующей быстрой установки

Открываем командную строку с правами администратора ( в поиске на панели задач вводим cmd и в результатах поиска кликаем «Запуск от имени администратора» ) и получаем список всех установленных приложений командой

winget list

Получаем примерно такую выдачу:

winget list
winget list

Приложения у которых в пункте «Источник» стоит winget или msstore доступны для установки из репозиториев winget. Это могут быть не только ваши любимые программы но и вспомогательные компоненты, такие как Microsoft Visual C++ - требуются для запуска некоторых программ, игр.

  • Экспорт списка ваших приложений доступных для установки

Мы можем экспортировать список программ доступных для установки в файл .json и потом использовать его после переустановки системы, команда выглядят следующим образом:

winget export %USERPROFILE%\Desktop\MyPrograms.json

– на рабочем столе создастся файл MyPrograms.json, при выполнении команды winget будет выдавать вам предупреждения какие программы не доступны для установки и для установки каких требуется принять лицензионное соглашение:

winget export
winget export

Сохраните файл MyPrograms.json на флешку

Установка ваших приложений из экспортированного списка в новой системе (импорт универсальный , сделали список на Win 11 – установили на Win 10 или наоборот)

Первым делом на вновь установленной системе обновите Установщик Приложений в Microsoft Store, иначе команда winget не будет доступна. Скопируйте файл MyPrograms.json с флешки на рабочий стол в новой системе - можете копировать куда угодно, хоть оставить непосредственно на флешке, просто путь к файлу MyPrograms.json измените. Я даю вам команду с учетом того, что файл MyPrograms.json находится на рабочем столе:

winget import -i %USERPROFILE%\Desktop\MyPrograms.json --accept-package-agreements --accept-source-agreements
-5

– начнется установка приложений из списка

Установка, обновление, удаление отдельных программ. О редактировании списка приложений, создание собственного списка приложений.

Winget может выполнять поиск по репозиториям нужной вам программы, для этого существует команда

winget search <название программы>

Например

winget search Telegram
winget search Telegram
winget search Telegram

если название программы состоит из двух и более слов – заключайте название в кавычки, например

winget search “Revo Uninstaller Pro”
winget search “Revo Uninstaller Pro”
winget search “Revo Uninstaller Pro”
  • Установка программы
winget install <ИД программы из выдачи команды winget search>.

Например, установка Revo Uninstaller Pro будет выглядеть так

winget install RevoUninstaller.RevoUninstallerPro
  • Редактирование списка своих приложений

Новичкам наверняка покажется сложным редактирование файлов .json - будут ошибки в синтаксисе написания, что-ж есть более простой метод – создание своего cmd или bat файла пакетной установки в любом текстовом редакторе. Шаблон файла такой:

winget install --id=RARLab.WinRAR -e --accept-package-agreements --accept-source-agreements && winget install --id=namazso.OpenHashTab -e --accept-package-agreements --accept-source-agreements && winget install --id= RevoUninstaller.RevoUninstallerPro -e --accept-package-agreements --accept-source-agreements

где

--id=<ИД программы из вывода команд winget list, winget search доступной в репозиториях winget>. Вы можете просто открыть текстовым редактором созданный выше файл MyPrograms.json и скопировать все ИД программ без кавычек из строк PackageIdentifier:

-e флаг который ищет точное совпадение по ИД, при этом учитывая регистр написания.

--accept-package-agreements --accept-source-agreements - флаги для автоматического принятия лицензионных соглашений

&& - переход к следующей команде при условии выполнения предыдущей

Сохраняем файл как допустим МоиПрограммы.cmd или МоиПрограммы.bat, достаточно запустить данный файл с правами администратора в новой системе и начнется установка ваших программ
(
Установщик приложений в обязательном случае должен быть обновлен в Microsoft Store )

Ну и наконец существует winstallвеб генератор файлов пакетной установки из репозиториев winget, который содержит на данный момент 3695 различных приложений, он генерирует bat файлы. Небольшим минусом его использования является регистрация через Twitter-заблокирован на территории России, но вы можете включить CloudflareWarp или быстро настроить VPN средствами Windows.

  • Обновление приложений через winget
winget upgrade --id=<ИД> - обновление выбранного приложения
winget upgrade --all - обновление всех установленных приложений доступных в репозиториях winget
  • Удаление приложений через winget

Можно удалять не только приложения установленные посредством winget и доступные в репозиториях winget

winget uninstall --id=<ИД любой из вывода команды winget list>
winget uninstall --id=Microsoft.Office.OneNote_8wekyb3d8bbwe
winget uninstall --id=Microsoft.Office.OneNote_8wekyb3d8bbwe
winget uninstall --id=Microsoft.Office.OneNote_8wekyb3d8bbwe

На этом все, более подробно со всеми нюансами работы winget вы можете ознакомится на docs.microsoft.com

Благодарю за внимание! Подписывайтесь!