Лучшие приложения для замены устаревших команд Windows

Microsoft молча удаляет команды, которые входили в Windows уже два десятилетия. WMIC был удален в 2024 году, и каждый следующий выпуск удаляет еще несколько. Если скрипт, старший чем 2015 год, все еще запускает ваши резервные копии, восстановление или задачи подключения, то это время истекает. Хорошая новость в том, что замены уже здесь и, в большинстве случаев, они лучше. Мы выбрали семь инструментов, которые покрывают почти все, что делали устаревшие команды, плюс еще кое-что, что они никогда не могли.

На что обратить внимание при выборе замены

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

Быстрое сравнение

Приложение Лучше всего для Бесплатный план Выдающаяся особенность
PowerShell 7 Все, что делали WMIC, systeminfo и net Да Структурированные объекты вместо разбираемых строк
Windows Terminal Хост, в котором должны работать большинство из них Да Вкладки, разделения и современный рендеринг
PSTools Удаленное администрирование и диагностика Да psexec все еще спасает положение
Nushell Современные скрипты, где PowerShell кажется тяжелым Да Конвейеры, ориентированные на данные
WSL2 Всё, что лучше делается с помощью Unix-инструментов Да Настоящий bash и grep на Windows
Git Bash Легкие утилиты Linux для скриптов Да Знакомые инструменты Linux без WSL
PowerToys Command Palette Интерактивные задачи, уходящие из Run Да Поставляется с поддерживаемой моделью расширения

Приложения

1. PowerShell 7 — лучшая замена для WMIC и большинства устаревших инструментов CMD

PowerShell 7 — это современная оболочка, которую Microsoft готова продолжать обновлять. Get-CimInstance покрывает подавляющее большинство того, что раньше делал WMIC, Get-ComputerInfo обрабатывает то, что производил systeminfo, а остальные встроенные командлеты заменяют net use, net user и sc.exe. Результатом являются объекты, а не текст, который нужно обрабатывать.

Где это не работает: Время запуска медленнее, чем CMD. Некоторые очень старые скрипты полагаются на особенности Windows PowerShell 5.1, которые PowerShell 7 вежливо отклоняет.

Платформы: Windows, Linux, macOS.

Цена: Бесплатно, лицензия MIT.

Загрузить: github.com/PowerShell/PowerShell

Итог: Целевой инструмент по умолчанию для любого скрипта старше 2020 года. Выполняйте миграцию постепенно.

2. Windows Terminal — лучший хост для всего остального

Windows Terminal — это хост терминала, в котором удобно работают все остальные инструменты из этого списка. Вкладки, разделенные панели, шрифты для каждого профиля и конфигурация JSON означают, что вы можете иметь PowerShell, WSL, Git Bash и Nushell рядом, не покидая одну программу. Это замена для хоста CMD, а не для самого CMD.

Где это не работает: Нет встроенной последовательной консоли или управления профилями SSH. Сторонние обертки закрывают пробел.

Платформы: Windows 10 1903 или новее, Windows 11.

Цена: Бесплатно, лицензия MIT.

Загрузить: github.com/microsoft/terminal

Итог: Установите один раз и забудьте о conhost.

3. PSTools — лучше всего для удаленных частей старого инструментария

PSTools от Sysinternals никуда не исчезли. psexec, psloglist, psinfo и pskill по-прежнему делают то, что ничто другое не делает так чисто. Они заполняют пробел для удаленных административных задач, которые раньше выполнял WMIC, и инструменты остаются подписанными и поддерживаемыми.

Где это не работает: Нет выходных данных в стиле PowerShell. Современные инструменты SOC будут помечать psexec, потому что его используют и злоумышленники.

Платформы: Windows, плюс ограниченные порты для Linux.

Цена: Бесплатно, EULA от Microsoft.

Загрузить: learn.microsoft.com/sysinternals/downloads/pstools

Итог: Правильный выбор, когда скрипту нужно достичь другой машины без агента.

4. Nushell — лучше всего для структурированных, небольших скриптов

Nushell рассматривает данные как таблицы с самого начала. Строка вроде ps | where cpu > 10 | sort-by mem | first 5 читает список процессов, фильтрует его, сортирует и берет первые пять, все это со структурированными данными. Где PowerShell кажется тяжелым, Nushell кажется больше похожим на электронную таблицу.

Где это не работает: Экосистема меньше, чем у PowerShell. Некоторая интеропертность Windows COM пока недоступна.

Платформы: Windows, macOS, Linux.

Цена: Бесплатно, лицензия MIT.

Загрузить: nushell.sh

Итог: Стоит учиться, когда вы обнаружите, что хотели бы, чтобы PowerShell был более похож на Unix.

5. WSL2 — лучше всего, когда Unix-инструмент — правильный ответ

WSL2 поставляется с настоящим ядром Linux рядом с Windows. Когда духовная замена устаревшей команды — это awk, sed, curl или конкретный скрипт Python или Node, WSL2 — это то место, где они находятся. Интеропертность с файловыми системами Windows достаточно быстра для написания скриптов в любом направлении.

Где это не работает: Наблюдатели файлов через границу могут быть медленными. Групповая политика в некоторых организациях может его блокировать.

Платформы: Windows 10 21H2 и новее.

Цена: Бесплатно.

Загрузить: Включите функцию “Windows Subsystem for Linux” или запустите wsl --install.

Итог: Любой скрипт, эквивалент Linux которого — это однострочник, принадлежит сюда.

6. Git Bash — лучшие легкие утилиты Linux

Git Bash поставляется как часть Git для Windows и добавляет работающий bash, grep, awk, sed и find в одном установщике. Для скриптов, которым нужно всего пара инструментов Unix без веса WSL, это самый маленький вариант.

Где это не работает: Нет менеджера пакетов. То, что поставляется с Git для Windows, — это все, что вы получаете.

Платформы: Windows.

Цена: Бесплатно, GPL-2.0.

Загрузить: git-scm.com/download/win

Итог: Правильный выбор, когда скрипт нуждается в трех инструментах Unix и больше ничего.

7. PowerToys Command Palette — лучшая замена для интерактивного Run

PowerToys Command Palette — это средство запуска, управляемое с клавиатуры, которое заменило Run и Search для многих администраторов. Он поставляется с моделью расширения, которая позволяет вам создавать скрипты с новыми командами, поэтому единовременные вызовы wmic, которые жили в мышечной памяти, могут переместиться сюда.

Где это не работает: Это не оболочка. Это запускает вещи; это не составляет конвейеры.

Платформы: Windows 10 22H2 или новее.

Цена: Бесплатно, лицензия MIT.

Загрузить: learn.microsoft.com/windows/powertoys/command-palette

Итог: Правильное место для интерактивных однострочников, которые больше не принадлежат CMD.

Как выбрать правильный инструмент

Часто задаваемые вопросы

Какие команды Windows были фактически удалены? WMIC был удален по умолчанию начиная с Windows 11 24H2. Другие перешли в режим “устаревшие”, что обычно означает еще одно обновление функций перед удалением. Собственный индекс непрерывности Microsoft — это источник истины.

Должны ли я переписать все скрипты сразу? Нет. Запускайте PowerShell 7 рядом с Windows PowerShell 5.1 во время миграции; оба поддерживаются. Перемещайте скрипты по мере того, как конвейеры CI и запланированные задачи их касаются.

Также ли устаревший Windows PowerShell 5.1? Microsoft обязалась сохранить 5.1 в Windows для совместимости с устаревшим ПО, но новые функции появляются только в PowerShell 7. Рассматривайте 5.1 как только для обслуживания.

Что происходит со скриптами, вызывающими WMIC после 24H2? Они получат “command not found”. Feature-on-demand устанавливает инструмент обратно на время, но эта дорога не является долгосрочным планом.

Должен ли я перейти на Nushell для всего? Только если вам это нравится. PowerShell 7 охватывает больше специфичного для Windows и имеет более широкую экосистему. Nushell отлично подходит для ежедневной работы с данными.

Работают ли эти инструменты через PowerShell Remoting? PowerShell 7 работает из коробки через WinRM или SSH. WSL2 и Git Bash являются локальными. PSTools остаются классическим ответом для удаленной работы, когда Remoting не включена.