在近日的开发者大会上,微软宣布了一项名为“Coreutils for Windows”的新项目,旨在将超过75条常用的Linux指令,通过Rust语言原生移植到Windows操作系统中。这意味着,Windows用户未来可以直接在CMD或PowerShell中使用诸如ls、grep、cat、cp、rm等开发者耳熟能详的命令,无需借助额外的子系统或兼容层。

微软首席执行官萨提亚·纳德拉对此解释称,现代开发者的工作环境日益多元化,经常需要在Linux、macOS、Windows以及各类容器环境间切换。不同平台默认指令集的不兼容性,迫使开发者寻找替代方案或维护多套脚本,这无疑降低了工作效率并增加了维护负担。此次移植核心工具集,正是为了简化这一跨平台工作流程。
原生执行与WSL的本质区别
该项目与Windows Subsystem for Linux(WSL)有着根本性的不同。WSL需要在后台运行一个轻量化的Linux内核来袋里和转换指令。而全新的“Coreutils for Windows”则是百分之百的Windows原生程序,完全脱离了对于Linux子系统的依赖。其目标是实现“一次编写,到处直接执行”的理想工作流,提升开发体验的一致性。
安装方式与实现原理
用户可以通过Windows自带的软件包管理器便捷安装。只需在命令行中输入winget install Microsoft.Coreutils即可完成。在技术实现上,系统会利用NTFS文件系统的硬链接(Hardlinks)技术,为每一条支持的指令创建一个指向核心执行文件coreutils.exe的链接。当用户输入指令时,系统会自动识别并调用对应的功能模块,确保其操作逻辑与Linux环境下的体验完全一致。
由于部分Linux指令的名称与Windows现有CMD及PowerShell的内置指令存在冲突,例如dir、expand、more等,微软也提供了详细的对照表,说明了在不同命令行界面下这些指令的优先权与具体行为模式,以避免混淆。目前,该项目已在GitHub上以开源形式发布,并由微软官方团队负责持续的维护与更新。
