Приветствую читатели! Сегодня немного об пакетной установке программ. Цитата из оригинальной статьи MS: «Программа командной строки winget позволяет пользователям обнаруживать, устанавливать, обновлять, удалять и настраивать приложения на компьютерах с Windows 10 и Windows 11. Она является клиентским интерфейсом для службы Диспетчера пакетов Windows».
На данный момент winget по умолчанию входит в состав Windows 11 и современных версий Windows 10 в качестве Установщика приложений, и обратите внимание – не все программы пока доступны в репозиториях winget, не буду затягивать перейдем к сути:
Первым делом вам надо проверить наличие у вас Установщика Приложений и обновить его в Microsoft Store до последней версии.
Просмотр списка установленных приложений и какие из них доступны для последующей быстрой установки
Открываем командную строку с правами администратора ( в поиске на панели задач вводим cmd и в результатах поиска кликаем «Запуск от имени администратора» ) и получаем список всех установленных приложений командой
winget list
Получаем примерно такую выдачу:
Приложения у которых в пункте «Источник» стоит winget или msstore доступны для установки из репозиториев winget. Это могут быть не только ваши любимые программы но и вспомогательные компоненты, такие как Microsoft Visual C++ - требуются для запуска некоторых программ, игр.
- Экспорт списка ваших приложений доступных для установки
Мы можем экспортировать список программ доступных для установки в файл .json и потом использовать его после переустановки системы, команда выглядят следующим образом:
winget export %USERPROFILE%\Desktop\MyPrograms.json
– на рабочем столе создастся файл MyPrograms.json, при выполнении команды winget будет выдавать вам предупреждения какие программы не доступны для установки и для установки каких требуется принять лицензионное соглашение:
Сохраните файл 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
– начнется установка приложений из списка
Установка, обновление, удаление отдельных программ. О редактировании списка приложений, создание собственного списка приложений.
Winget может выполнять поиск по репозиториям нужной вам программы, для этого существует команда
winget search <название программы>
Например
winget search Telegram
если название программы состоит из двух и более слов – заключайте название в кавычки, например
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 вы можете ознакомится на docs.microsoft.com
Благодарю за внимание! Подписывайтесь!