Как экспортировать и импортировать приложения с помощью Winget в Windows 11

Что такое Winget?
Winget (Windows Package Manager) — это официальный инструмент командной строки для управления пакетами приложений в Windows. Он позволяет искать, устанавливать, обновлять и удалять приложения из единого репозитория через CMD или PowerShell. GUI у официального Winget нет — работа идёт через консоль.
Определение в одну строку: Winget — это манифестный менеджер пакетов для массовой установки и управления приложениями в Windows.
Важно: Winget управляет установкой по записям в репозитории. Если пакет не описан в репозитории Winget, инструмент не сможет его автоматически установить.
Зачем экспортировать список приложений
Экспорт списка приложений удобен при чистой установке Windows или при переносе настроек на новый ПК. Вместо ручного поиска и скачивания десятков программ вы формируете файл-манифест и даёте Winget установить всё, что есть в репозитории.
Ограничения: экспорт не создаёт резервных копий установочных файлов и не включает пакеты, отсутствующие в репозитории Winget или из Microsoft Store. Для таких приложений придётся иметь отдельный список и сохранять установочные файлы вручную.
Экспорт списка приложений с помощью Winget (Windows 11)
Ниже — упрощённый и проверенный порядок действий для экспорта в JSON или TXT.
- Откройте окно «Выполнить» (Win + R), введите
cmd, затем нажмите Ctrl + Shift + Enter, чтобы запустить Командную строку от имени администратора. - Убедитесь, что у вас установлен Winget. Введите
winget --version— появившаяся версия подтверждает установку. - Исполните команду экспорта в JSON:
winget export -o C:\apps.json- Если хотите экспорт в текстовый файл, используйте:
winget export -o C:\apps.txt- Во время экспорта вы можете увидеть предупреждения вида:
“Installed package is not available from any source:
Это означает, что конкретная программа не найдена в репозитории Winget и не будет установлена автоматически на другом ПК.
- Скопируйте получившийся файл
C:\apps.json(илиC:\apps.txt) на USB-накопитель, в облако (OneDrive/Google Drive) или в любое другое безопасное место.
Примечание: команда создаёт только список пакетов. Для установки самих программ на целевом ПК требуется интернет-подключение, потому что Winget загружает файлы из сетевых источников.
Как отредактировать экспортированный JSON-файл
Иногда в списке окажутся программы, которые вам не нужны на новом компьютере. Вместо повторного экспорта удобнее поправить JSON вручную.
- Откройте проводник и найдите
C:\apps.json. - Щёлкните правой кнопкой по файлу → «Открыть с помощью» → «Блокнот» (или другой текстовый редактор, например VS Code, Notepad++).
- Найдите раздел “Packages” — это массив объектов, где каждый объект — это один пакет.
- Чтобы удалить пакет, удалите весь JSON-блок этого пакета от открывающей фигурной скобки
{до запятой,, отделяющей пакеты друг от друга. Убедитесь, что структура JSON остаётся корректной (нет лишних запятых или незакрытых скобок).
Пример (упрощённая структура):
{
"SchemaVersion": "1.0.0",
"Packages": [
{
"PackageIdentifier": "Publisher.Package1",
"Version": "1.2.3"
},
{
"PackageIdentifier": "Publisher.Package2",
"Version": "4.5.6"
}
]
}Удаление одного блока должно сохранить валидность JSON. Если не уверены, проверьте файл через JSON-валидатор или откройте в редакторе с подсветкой синтаксиса.
Важное: не меняйте другие разделы файла помимо блоков внутри “Packages” — это может привести к ошибкам при импорте.
Импорт и массовая установка приложений через Winget
Перед импортом рекомендуется обновить источники Winget, чтобы получить актуальные манифесты.
- Скопируйте
apps.json(илиapps.txt) на целевой ПК в корень диска C: или в удобную папку. - Откройте Командную строку от имени администратора.
- Обновите источники:
winget source update- Выполните импорт:
winget import -i C:\apps.jsonили для текстового файла:
winget import -i C:\apps.txtЕсли при импорте возникают ошибки, связанные с соглашениями пакетов или источников, добавьте флаги автоматического принятия:
cls
winget import -i C:\apps.json --accept-source-agreements --accept-package-agreementsПосле этого начнётся последовательная загрузка и установка пакетов, перечисленных в файле. Дождитесь завершения установки.
Ключевые замечания:
- Winget устанавливает только те пакеты, которые доступны в репозитории и соответствуют идентификаторам в JSON.
- Некоторые пакеты могут требовать вмешательства пользователя (например, установить дополнительные зависимости, согласиться с лицензией специфичной программы), даже с флагами принятия этот момент возможен.
Что делать с приложениями, не включёнными в экспорт
Winget при экспорте выводит предупреждения о пакетах, недоступных в источниках. Для их учёта выполните команду и сохраните полный вывод в отдельный текстовый файл:
winget export -o C:\apps.json > C:\e.txtФайл C:\e.txt будет содержать полный хронологический вывод команды, включая имена пакетов, которые не были экспортированы. Сохраните его и используйте как чек-лист для ручной переустановки.
Советы по работе с пропущенными пакетами:
- Проверьте Microsoft Store: многие приложения из магазина станут доступны при входе в ту же учётную запись.
- Скачайте установочные файлы заранее и сохраните их на внешнем накопителе.
- Для корпоративной среды рассмотрите развёртывание через SCCM/Intune для закрытых приложений.
Альтернативные подходы
- Ninite — подходит для популярных приложений (Chrome, 7-Zip, VS Code и т.д.). Преимущество — простота и GUI, но список приложений ограничен.
- Chocolatey — альтернативный менеджер пакетов с большим сообществом. Имеет GUI-обёртки и подходит для более гибкой автоматизации.
- Ручной бэкап установочных файлов и экспорт реестра/настроек — даёт полный контроль, но требует больше времени.
Когда Winget не подходит:
- Программы без публичных установщиков или со сложными инсталляторами (игры через Epic/Steam с DRM).
- Приложения, требующие активации/локальных лицензий.
Ментальная модель
Представьте Winget как список покупок в виде манифеста. Экспорт — это распечатка списка; импорт — поход в магазин, где вы берёте только те товары, что доступны в магазине (репозитории). Товары, которых нет в магазине, нужно найти в другом месте.
Уровни зрелости использования Winget
- Базовый: экспорт/импорт одного файла вручную при переустановке системы.
- Продвинутый: автоматизация импорта в скриптах установки, использование флагов соглашений и логирования.
- Автоматизированный: интеграция со скриптами развертывания в корпоративной среде (SCCM/Intune), предварительная проверка доступности пакетов.
Пошаговый SOP (чек-лист) для переноса приложений
Подготовка на исходном ПК:
- Запустите
winget --version. - Выполните
winget export -o C:\apps.json > C:\export-log.txt. - Сохраните
C:\apps.jsonиC:\export-log.txtв облако или на внешний диск. - Сделайте ручную копию установочных файлов для приложений, которых нет в репозитории.
На целевом ПК:
- Установите последние обновления Windows и Winget.
- Скопируйте
apps.jsonвC:\. - Выполните
winget source update. - Импортируйте:
winget import -i C:\apps.json --accept-source-agreements --accept-package-agreements. - Проверьте
e.txt/export-log.txtи установите пропущенные приложения вручную.
Критерии приёмки:
- Все пакеты из
apps.json, доступные в репозитории, установлены без ошибок. - Остаточные приложения перечислены и сохранены для ручной установки.
- Логи установки сохранены (при необходимости для аудита).
Контрольный список по ролям
Администратор:
- Подготовить и проверить файл
apps.json. - Обновить источники Winget и убедиться в доступности пакетов.
- Обеспечить права администратора на целевой машине.
Продвинутый пользователь:
- Отредактировать JSON, удалить ненужные пакеты.
- Сопроводить процесс ручной установки программ, отсутствующих в репозитории.
Новичок:
- Перенести JSON на целевой ПК и запустить импорт по инструкции.
- Обратиться к администратору, если появляются ошибки с правами.
Типичные ошибки и способы решения
Ошибка: “Installed package is not available from any source” Решение: Добавьте имя пакета в свой список ручной установки. Проверьте альтернативные репозитории или скачайте установщик вручную.
Ошибка при импорте, требующая принятия соглашений Решение: Запустите импорт с флагами --accept-source-agreements --accept-package-agreements.
Ошибка JSON (синтаксис) Решение: Проверьте файл через JSON-валидатор, верните удалённые запятые/скобки в корректное положение.
Ошибка доступа (недостаточно прав) Решение: Запустите CMD/PowerShell от имени администратора (Ctrl + Shift + Enter).
Тесты и критерии приёмки
- Тест: импорт в чистой VM. Критерий: все доступные пакеты устанавливаются без ручного вмешательства.
- Тест: импорт с флагами соглашений. Критерий: нет остановок на принятии лицензий.
- Тест: экспорт/редактирование/импорт с удалением пакета. Критерий: удалённый пакет не устанавливается, остальные — устанавливаются.
Шаблон проверки содержимого JSON (чек-лист при ревью файла)
- Файл парсится валидно как JSON.
- Раздел “Packages” присутствует и содержит массив объектов.
- У каждого объекта есть поле
PackageIdentifier. - Нет оставшихся комментариев или нестандартных полей, которые может не понять Winget.
Приватность и заметки для корпоративной среды
- Winget обращается к внешним источникам для скачивания установщиков. В корпоративной сети согласуйте трафик с отделом безопасности.
- Для закрытых приложений используйте внутренние репозитории или корпоративные инструменты развертывания.
Факт-бокс: что сохраняет Winget при экспорте
- Сохраняется: идентификатор пакета (PackageIdentifier), версия (если указана), источник манифеста.
- Не сохраняется: пользовательские настройки приложения, локальные данные, лицензионные ключи, установочные файлы.
Резюме
Winget упрощает перенос установленных приложений между компьютерами: вы экспортируете манифест, переносите файл и импортируете его на новом ПК. Инструмент ускоряет установку пакетов из репозитория, но не заменяет сохранение установочных файлов или лицензионных данных для программ, не доступных в репозитории. Комбинируйте Winget с ручным бэкапом и альтернативными менеджерами пакетов для полного контроля над процессом миграции.
Важно: перед массовой установкой протестируйте импорт в виртуальной машине и убедитесь, что все критичные приложения доступны и устанавливаются корректно.
Похожие материалы
Несколько аккаунтов Skype: Multi Skype Launcher
Журнал для работы: повысить продуктивность
Персональные звуки уведомлений на Android
Скачивание шоу Hulu для офлайн‑просмотра
Microsoft Start: персонализированная новостная лента