image

Microsoft переводит интерпретатор командной строки cmd.exe в «режим обслуживания». Компания порекомендовала заменить его на PowerShell.

Как отметил руководитель Windows Terminal Рич Тернер, cmd.exe «не должен использоваться для работы с интерактивной оболочкой».


«PowerShell — это будущее», — добавил он.


CMD использовался как оригинальный интерпретатор командной строки по умолчанию в эпоху линейки ОС Windows NT в 90-е гг. Он предоставил администраторам возможность перемещать устаревшие пакетные файлы и сценарии. Разработку cmd.exe свернули после выхода Windows 2000. Однако интерпретатор остается частью современных ОС, в том числе Windows 8, Windows Server 2012 и Windows 10 для обеспечения обратной совместимости. Windows PowerShell стал основной командной оболочкой. Для Windows он вышел в 2006 году, а в 2016 году был открыт исходный код интерпретатора.

Однако во многих организациях все еще существует множество устаревших сценариев CMD. Перевод в «режим обслуживания» означает, что решение проблем, связанных с интерпретатором, перестает быть основной заботой Microsoft, и компания будет реагировать только на серьезные инциденты.


Но и с PowerShell существуют проблемы. Перелом может наступить после того, как выйдет PowerShell 7, но пока в Windows работает версия 5.1, которая, как и CMD, находится в режиме обслуживания. Обновлять версию не собираются, пока «не будет устранен разрыв в поддержке LTS между .NET и Windows». То есть, до этого момента Windows будет продолжать использовать и PowerShell, и CMD в режиме обслуживания.
См. также: «Что такое Windows PowerShell и с чем его едят? Часть 1: основные возможности