WINGET – установка, обновление и удаление программ в командной строке Windows.Диспетчер программных пакетов (а так же - windows package manager, менеджер программных пакетов) winget.exe в современных ОС семейства Windows является стандартным средством управления установкой, обновлением и удалением программ. Функционально WinGet во многом похож на менеджеры программных пакетов Linux (apt, yum, dnf и т.п.). Развивается динамичными темпами и является проектом с открытым исходным кодом (Open Source). Страница Winget на GitHub В отличие от магазина приложений Microsoft Store, Диспетчер программных пакетов winget.exe предоставляет пользователям расширенные возможности по безопасному поиску, установке, обновлению и удалению значительно большего набора программ, при чем, - актуальной версии и из официального источника. Формат командной строки winget: winget команда параметры Для получения справки по командам и параметрам используется ключ -?: winget -? Диспетчер пакетов Windows v1.3.2691 (с) Корпорация Майкрософт (Microsoft Corporation). Все права защищены. Программа командной строки winget дает возможность устанавливать приложения и другие пакеты из командной строки. использование: winget [<команда>] [<параметры>] Применимы следующие команды: install Установка указанного пакета show Показывает сведения о пакете source Управление источниками пакетов search Поиск и отображение базовых сведений о пакетах list Отображать установленные пакеты upgrade Отображает и выполняет доступные обновления uninstall Удаление указанного пакета hash Вспомогательное приложение для хэширования файлов установщика validate Утверждает файл манифеста settings Открыть параметры или настроить параметры администратора features Показывает состояние экспериментальных компонентов export Экспортирует список установленных пакетов import Устанавливает все пакеты в файле Для более подробной информации о конкретной команде передайте ей аргумент справки. [ -? ] Примеры использования команды wingetПри запуске winget в контексте учетной записи пользователя, для установки некоторых приложений может потребоваться повышение уровня прав (Запуск от имени Администратора). Работа с источниками приложений.При возникновении сложностей в работе с конкретной функцией winget, например, при управлении источниками приложений, используется команда с ключом -?: winget source -? ![]() Список источников можно получить с помощью команды: winget source list По умолчанию, устанавливаются два источника: msstore - магазин приложений Microsoft Store. winget - кэш winget на серверах Microsoft. На начало 2023г. указанные источники предоставляли бесплатные приложения в форматах .msix, msi и .exe. Имеется возможность добавления источников сторонних приложений (как правило - платных), перечень которых можно найти на сайте проекта winget winget source add -n pro -t "MS.Rest" -a https://api.winget.pro - добавить источник с именем pro winget source remove –n pro - удалить источник с именем pro Установка и обновление приложений.Для поиска приложений используется команда winget search, например: winget search Nvidia - искать приложения от Nvidia. ![]() Отображается список приложений от Nvidia, доступных для установки. Имя - имя приложения. ИД - уникальный идентификатор приложения. Установка приложения возможна как по его имени, так и по идентификатору, когда, например, у разных приложений совпадают имена. Если в именах имеются пробелы, то они заключаются в двойные кавычки: winget install "NVIDIA Control Panel" - установить Панель управления Nvidia ![]() При установке приложения отображается источник, сведения о разработчике, краткое описание и версия, а также требуется подтвердить лицензионное соглашение. Без подтверждения установка не выполняется. Это неудобно в сценариях, выполняемых автоматически, когда отсутствует оператор, который может ответить на запрос и чтобы его подавить используются параметры: --accept-source-agreements - Принимать все соглашения источников во время операций с источниками. --accept-package-agreements - Принять все лицензионные соглашения для всех пакетов. Например, команда для установки Панели управления Nvidia по идентификатору ИД и с подавлением запроса на соглашение, будет следующей: winget install 9NF8H0H7WMLT --accept-package-agreements В результатах поиска приложения обычно отображается его Версия, признак Совпадение, и Источник - магазин приложений msstore или кэш winget. Как правило, в источниках имеется самая последняя версия, хотя бывают и исключения. При установке конкретной версии, ее можно указать в команде: winget install 9NF8H0H7WMLT –version 2.55.6.11 В случае отставания версии установленного приложения от версии имеющегося в источников, можно выполнить его обновление с помощью команды winget upgrade. Отображается информация о доступных обновлениях: ![]() В приведенном списке доступны для обновления 4 приложения, из установленных на данном компьютере, а версия двух приложений неизвестна но, при необходимости, можно включить в список и их, используя параметр --include-unknown. winget upgrade --include-unknown winget upgrade "Far Manager 3 (x64)" - обновить Far Manager до актуальной версии, имеющейся в источнике. winget upgrade –all - обновить все приложения до актуальной версии источников. winget upgrade --all --include-unknown - обновить все приложения, включая те, для которых невозможно определить версию, до актуальной версии источников. Для получения списка установленных приложений используется команда winget list В тех случаях, когда в списке установленных приложений присутствуют имеющие название на русском языке, необходимо перед выполнением WinGet установить кодовую страницу с поддержкой Unicode (номер 65001) командой: chcp 65001 Для получения текстового файла со списком приложений, установленных на данном компьютере можно воспользоваться перенаправлением стандартного вывода в файл: winget list > allprogramms.txt Для получения выборочного списка приложений могут использоваться специальные фильтры – по источникам, именам, идентификаторам и другим признакам. winget list --name Autodesk - отобразить список установленных программ, в именах которых имеется слово ”Autodesk” Команда winget list может использоваться с псевдонимом ls: winget ls --name "Autodesk autocad" - отобразить список установленных программ, в именах которых имеется словоcочетание ”Autodesk AutoCAD”. Если фильтр содержит пробелы, то он должен заключаться в двойные кавычки. Для получения подробной информации об установленном приложении используется команда winget show Или с использованием псевдонима: winget view winget show Yandex - отобразить подробную информацию о приложении с идентификатором ”Yandex” Кроме названия и версии приложения, будут отображаться и его метаданные – издатель, описание, домашняя страница, лицензия, URL-адрес файла лицензии и сведения об установщике. ![]() Удаление приложенийУдаление приложений выполняется с указанием имени или идентификатора, и в редких случаях, с использованием дополнительных фильтров, перечень которых можно получить по команде winget uninstall ? winget uninstall "NirSoft IPNetInfo" - удалить приложение по имени "NirSoft IPNetInfo". При этом запустится стандартный установщик Windows и удаление приложения будет выполнено как обычно. winget uninstall 9NF8H0H7WMLT - удалить приложение по идентификатору ИД "9NF8H0H7WMLT". Экспорт и импорт списка приложенийЭкспорт и импорт списка приложений позволяет упростить развертывание однотипных по набору программ рабочих мест, как например, компьютерные классы, интернет-кафе и т.п. При экспорте создается файл в формате JSON содержащий весь список установленных на данном компьютере приложений. Файл экспорта можно отредактировать в любом текстовом редакторе и использовать как источник импорта приложений на другом компьютере. winget export -o D:\win11.txt --accept-source-agreements - Экспортировать список установленных приложений в файл D:\win11.txt, принимая лицензионные соглашения источников приложений. winget import -i D:\win11.txt - импортировать список приложений из файла D:\win11.txt для установки на данном компьютере. Обычно, при импорте удобно использовать параметры, принимающие лицензионные соглашения источников и пакетов, а также блокирующие вывод интерактивных запросов. Важной особенностью команды Winget является то, что ее можно использовать даже в том случае, если у вас отключен магазин приложений Microsoft Store и обновления Windows. В частности, это позволяет обойти некоторые ошибки установки VC++ Redistributable, и других компонент, требующих наличие работающего Центра обновлений и магазина приложений. |
|
|