WINGET – установка, обновление и удаление программ в командной строке Windows.



В современных ОС семейства Windows имеется стандартная утилита командной строки winget.exe, функционально аналогичная менеджерам программных пакетов Linux (apt, yum, dnf и т.п.), назначением которых является централизованная установка, обновление и удаление программ и компонентов системы из различных источников. В отличие от магазина приложений 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 show

winget show Yandex - отобразить подробную информацию о приложении ”Yandex”

Удаление приложений



Удаление приложений выполняется с указанием имени или идентификатора, и в редких случаях, с использованием дополнительных фильтров, перечень которых можно получить по команде

winget uninstall ?

winget uninstall "NirSoft IPNetInfo" - удалить приложение по имени "NirSoft IPNetInfo". При этом запустится стандартный установщик Windows и удаление приложения будет выполнено как обычно.

winget uninstall 9NF8H0H7WMLT - удалить приложение по идентификатору ИД "9NF8H0H7WMLT".








Весь список команд CMD Windows



Рейтинг@Mail.ru