Добавить в корзинуПозвонить
Найти в Дзене
Техногид

Как обновить все программы на компьютере одной командой без стороннего софта

Вспомните этот бесконечный парад всплывающих окон. Включается рабочий ноутбук, и тут же начинается хаос. Мессенджер Telegram просит перезапуск, рабочая утилита Zoom требует скачать новый инсталлятор, Яндекс Браузер тихо ждет перезагрузки в углу экрана, а привычный текстовый редактор вообще открывает страницу на внешнем сайте с предложением забрать свежий установочный файл. Каждый раз кликать кнопки согласия, снимать скрытые галочки с установки партнерских сервисов и тратить на это драгоценное утреннее время — сомнительное удовольствие. Давно существует более изящное решение. Всю эту рутину можно закрыть одной короткой строчкой в консоли. Для этого не придется ставить сомнительный сторонний софт, который будет постоянно висеть в процессах и расходовать оперативную память. Все необходимые инструменты уже встроены в операционную систему или разворачиваются буквально за минуту. В актуальных версиях Windows 10 и Windows 11 по умолчанию присутствует официальный пакетный менеджер Winget. Разр
Оглавление

Вспомните этот бесконечный парад всплывающих окон. Включается рабочий ноутбук, и тут же начинается хаос. Мессенджер Telegram просит перезапуск, рабочая утилита Zoom требует скачать новый инсталлятор, Яндекс Браузер тихо ждет перезагрузки в углу экрана, а привычный текстовый редактор вообще открывает страницу на внешнем сайте с предложением забрать свежий установочный файл.

Каждый раз кликать кнопки согласия, снимать скрытые галочки с установки партнерских сервисов и тратить на это драгоценное утреннее время — сомнительное удовольствие.

Давно существует более изящное решение. Всю эту рутину можно закрыть одной короткой строчкой в консоли. Для этого не придется ставить сомнительный сторонний софт, который будет постоянно висеть в процессах и расходовать оперативную память. Все необходимые инструменты уже встроены в операционную систему или разворачиваются буквально за минуту.

Встроенный инструмент Windows — Winget

В актуальных версиях Windows 10 и Windows 11 по умолчанию присутствует официальный пакетный менеджер Winget. Разработчики создали его без лишнего шума, но инструмент получился крайне полезным.

Для проверки работы достаточно открыть командную строку. Нажимаем комбинацию клавиш Win + R, пишем cmd и нажимаем Enter. В открывшемся окне вводим команду

winget upgrade

Компьютер на несколько секунд задумается, свяжется с официальными серверами программ и выдаст список софта, для которого прямо сейчас доступны свежие версии. В таблице отобразится текущая версия программы, доступная новая версия и уникальный идентификатор приложения.

Чтобы обновить абсолютно всё из этого списка за один раз, достаточно ввести одну команду

winget upgrade --all

Система самостоятельно скачает нужные файлы, запустит их в тихом режиме, обновит программы и очистит за собой временные папки. Пользователю остается лишь наблюдать за бегущими процентами загрузки в окне консоли.

Если нужно сначала найти и установить какое-то новое приложение, это тоже делается через терминал. Например, для поиска архиватора 7-Zip используется команда winget search 7zip, а для его быстрой установки достаточно написать winget install 7zip.7zip.

Как зафиксировать версию программы и избежать сбоев

При массовом обновлении возникает логичный вопрос безопасности. Что делать, если новая версия важной программы работает нестабильно или лишилась нужной функции? В пакетном менеджере предусмотрен механизм заморозки версий, который называется пиннингом.

Для исключения конкретного приложения из общего списка обновлений используется специальная команда. Например, чтобы зафиксировать версию редактора Notepad++ и больше не обновлять его автоматически, нужно ввести команду

winget pin add --id Notepad++.Notepad++

После этого общая команда массового апдейта будет просто игнорировать данное приложение. Посмотреть список всех замороженных программ можно с помощью простой команды winget pin list, а вернуть программе возможность обновляться поможет команда winget pin remove с указанием идентификатора софта.

Графический интерфейс для тех, кто не любит консоль

Далеко не всем удобно работать в текстовом терминале. Для таких случаев существует прекрасное бесплатное решение с открытым исходным кодом — UniGetUI. Найти проект можно на платформе github.com в разделе разработчика marticliment.

Эта программа представляет собой красивую графическую оболочку для Winget и других популярных менеджеров пакетов. В удобном окне со списком программ можно отмечать галочками нужные утилиты, обновлять их одной кнопкой, настраивать автоматические уведомления и даже создавать резервные копии списка установленного софта для быстрого переноса на другой компьютер.

Настройка полного автопилота в Windows

Запускать команду вручную раз в неделю — это уже огромный шаг вперед. Однако автоматизацию можно довести до абсолюта. Настроим систему так, чтобы программы обновлялись самостоятельно без участия пользователя, например, во время запуска компьютера или по выходным.

Для этого воспользуемся стандартным Планировщиком заданий Windows.

Сначала открываем меню Пуск, пишем Планировщик заданий и запускаем утилиту.
В правой панели действий выбираем пункт Создать простую задачу.
Даем задаче понятное имя, например, AutoUpdate_Winget.
Указываем удобный триггер запуска, оптимальным выбором будет Еженедельно или При запуске компьютера.
В качестве действия выбираем Запуск программы.
В строке исполняемого файла пишем winget.
В поле аргументов вставляем строку upgrade --all --silent.

Параметр --silent имеет ключевое значение. Он приказывает установщикам выполнять все операции в фоновом режиме, не открывая лишних окон на экране и не отвлекая от работы.

Как обстоят дела на macOS

На устройствах Apple встроенного пакетного менеджера по умолчанию нет, но эту проблему давно решило сообщество. Общепринятым стандартом стал проект Homebrew. Установка этого инструмента занимает пару минут и подробно описана на его официальном сайте.

Как только Homebrew установлен, пользователь получает аналогичную суперсилу для управления программами.

Открываем Терминал и пишем связку команд

brew update && brew upgrade

Первая часть команды обновляет базу данных доступных версий, а вторая — скачивает и устанавливает апдейты для всего софта, который был установлен через систему brew.

На macOS также работает механизм заморозки версий. Если требуется временно запретить обновление конкретной утилиты, достаточно ввести команду brew pin и указать имя программы. Снять ограничение можно обратной командой brew unpin.

Решение для Linux — Flatpak и APT

Для полноты картины стоит упомянуть семейство операционных систем Linux, где концепция пакетных менеджеров зародилась изначально. Здесь автоматизация выглядит максимально естественно.

В дистрибутивах на базе Debian или Ubuntu для обновления системных пакетов используется классическая команда

sudo apt update && sudo apt upgrade -y

Для современных универсальных приложений, которые часто устанавливают через изолированную систему Flatpak, команда обновления выглядит еще проще

flatpak update -y

Флаг -y автоматически дает согласие на все вопросы системы в процессе установки, что позволяет легко упаковать эти команды в простейший фоновый скрипт.

Где автоматика может споткнуться

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

  • Портативный софт. Если программа была скачана в виде обычного архива и просто распакована в рабочую папку, пакетные менеджеры о ней не узнают. Они видят только те приложения, которые устанавливались через стандартные инсталляторы или официальные магазины приложений.
  • Права администратора. Некоторым программам для успешного обновления жизненно необходимы повышенные привилегии в системе. Если запустить автоматический скрипт от имени обычного пользователя, процесс может прерваться ошибкой доступа. По этой причине системные задачи автоматизации рекомендуется настраивать с запуском от имени администратора.
  • Специфический рабочий софт. Сложные профессиональные инструменты вроде бухгалтерских программ семейства 1С или инженерных систем проектирования лучше обновлять вручную после создания резервных копий. Внезапное автоматическое обновление может затереть важные локальные конфигурационные файлы или нарушить совместимость с базами данных.

Итоги

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