Компания Microsoft на собственной конференции для разработчиков Build 2026 представила инструмент, который делает 75 команд Linux доступными в Windows PowerShell и командной строке. Инструмент под названием Coreutils (откроется в новом окне) можно загрузить на Github (откроется в новом окне), и он позволяет выполнять такие команды, как cat, ls, grep и head, в Windows.
Стандартная команда Linux ls для вывода содержимого каталога теперь работает и в Windows, и может использоваться параллельно с командой DOS dir. Однако существуют и конфликты между устоявшимися командами Linux и существующими командами CMD и PowerShell с теми же именами.
Для таких случаев Microsoft предоставляет список, в котором перечислены команды, способные вызывать конфликты. Они разделены в зависимости от того, работают ли они в CMD, в PowerShell или в обеих средах. Примерами являются rmdir и date, где приоритет между командой Linux и Windows может различаться в зависимости от используемой оболочки, порядка в системном пути (PATH) или таблицы псевдонимов.
Плавный переход между различными операционными системами
С помощью Coreutils Microsoft хочет дать разработчикам возможность использовать в Windows те же команды, которые они знают по MacOS, Linux и WSL (подсистема Windows для Linux). Это должно уменьшить трения при переходе между различными операционными системами, позволяя и дальше использовать существующие скрипты и привычки.
Команды предоставляются в Windows в виде мультивызываемого двоичного файла, который делает каждую утилиту доступной под ее стандартным именем. Для работы Coreutils требуется PowerShell версии 7.4 или выше.
Взгляд Golem
Для бывшего главы Microsoft Стива Баллмера Linux когда-то (откроется в новом окне) был «раковой опухолью, поражающей все, к чему прикасается». Теперь, 25 лет спустя, бывшая угроза бизнес-модели превратилась в неотъемлемую часть операционной системы Microsoft. Похоже, корпорация усвоила, что полезной функции следует отдавать предпочтение, даже если она происходит из внешнего источника.