Microsoft Coreutils让Linux开发者无需WSL即可在Windows中运行原生命令

作者: CBISMB

责任编辑: 邹大斌

来源: CBISMB

时间: 2026-06-05 17:10

关键字: 微软 Windows 软件开发

浏览: 0

点赞: 0

收藏: 0

微软近日在Build 2026开发者大会上发布了Coreutils for Windows,这项Windows 11新功能允许开发者从单一二进制文件中原生运行大量常用Linux命令行工具,无需借助Windows Linux子系统(WSL)虚拟机。

Coreutils旨在降低微软所称的开发者跨平台工作时的"认知负荷"。目前,在Windows上访问CI/CD开发环境中必不可少的Linux命令行工具,需要通过Git Bash等模拟环境或WSL虚拟终端来实现,两者都耗时且效率低下。

微软在公告中表示:"开发者在不同平台间频繁切换,但熟悉的命令无法一致地执行,不得不依赖变通方案,导致速度下降和上下文切换。"Coreutils消除了这种反复切换的需要,开发者可以直接在Windows CMD命令提示符、PowerShell或Windows Terminal中运行绝大多数Linux命令。"无论你是在Linux、macOS、WSL、容器还是云环境之间迁移,你多年来积累的命令和工作流都可以在Windows环境中直接使用。"

75个命令,但并非全部

Coreutils通过WinGet安装(`install Microsoft.Coreutils`),本身是对GNU uutils/coreutils项目的Rust语言重写,提供了跨Linux发行版通用的命令行工具。

实现高效管理的关键在于,各个Linux命令通过一个多调用可执行文件运行,该文件通过NTFS硬链接映射到每条命令。这种设计的优势是:只需安装一个二进制文件、只需签名一次、只需修补或更新一次。

微软列出了Coreutils支持的75个Linux工具,包括ls、cp、find、grep、rm、du、hostname和uptime等常用命令。然而,部分Coreutils命令与现有CMD或PowerShell命令冲突,导致不可用,具体包括dir、expand、kill、more、timeout和whoami。此外,还有部分命令因依赖Windows无法以兼容方式实现的POSIX Unix/Linux特性而被略去,如chmod、chown、id、stty和chroot。

在某些情况下,命令可以在CMD中执行但无法在PowerShell中执行。微软解释了其中复杂的优先级机制:"Coreutils版本是否运行取决于Shell环境、PATH顺序以及(对于PowerShell而言)别名表。"

Build 2026 同期发布

除Coreutils外,Build 2026开发者大会还见证了微软的多项发布:WSL容器CLI和API即将进入公开预览阶段,支持在Windows上部署Linux容器;一个面向自主AI代理的新框架,附带开源治理工具;以及Microsoft Scout,一款旨在自动化Microsoft 365中各类任务的AI代理。

Coreutils的发布标志着微软在打通Windows与Linux开发者体验方面迈出了重要一步,让Linux开发者能够真正以原生方式在Windows中工作,不再需要额外的虚拟层或模拟环境。

©本站发布的所有内容,包括但不限于文字、图片、音频、视频、图表、标志、标识、广告、商标、商号、域名、软件、程序等,除特别标明外,均来源于网络或用户投稿,版权归原作者或原出处所有。我们致力于保护原作者版权,若涉及版权问题,请及时联系我们进行处理。