导读:史蒂夫·鲍尔默最担心的事已经发生了:Linux 已经渗透到微软 Windows 系统的最深处。
在本周举行的微软年度Build 2026开发者大会上,微软发布了一款名为“coreutils”的工具,这是一个Windows多调用二进制文件,它可以直接在Windows CMD和PowerShell命令行中使用超过75个Linux/Unix命令。
其中包括ls、grep、cat、cp 及rm 等常用的Linux命令。微软说了,这不叫“抄”,这叫做“致敬”。
“现在,功能齐全的 Grep 工具已面向 Windows 用户全面开放,”微软 CEO 萨蒂亚·纳德拉昨天在 Build 大会上发表主题演讲时兴奋地说道。
Grep(全局正则表达式打印)提供了一种在给定空间内搜索所有文件的方法——例如,它对于搜索大型的日志文件至关重要。它是 Linux 用户日常使用的众多常用命令之一。
微软公开表示道,启用 Linux 功能的目的是为了规范其支持的多个平台上的用户命令,以便开发人员脚本能够在容器、PowerShell、Mac、Windows 子系统 Linux 版 (WSL) 和 DOS 时代的 CMD 命令行中以相同的方式运行。
Unix 的设计理念是让小型程序能够轻松地通过管道连接起来,构建更大的工作流程。例如,可以使用 cat(连接)命令将 grep 命令的输出与其他内容合并。因此,开发人员、管理员以及现在的 AI 代理都会编写包含这些命令的脚本。
对于偶尔需要在 Windows 命令提示符 (CMD) 中工作的 Linux 用户来说,这项改进也是个好消息:他们不再需要记住标准的“ls”命令在 Windows 中无法列出文件内容,而必须使用 DOS 时代的“dir”命令。现在两种命令都能正常工作了。
话虽如此,许多移植的命令存在着一些细节问题。有一些长期使用的 Linux 命令会与同名的现有 CMD 和 PowerShell 命令冲突,例如 date 和 rmdir。在这种情况下,用户必须弄清楚哪个相同的命令优先级更高,而这可能取决于 Shell、PATH 路径顺序等因素。
一位X平台用户指出,Coreutils解决了反复查找grep命令的PowerShell等效语法的烦恼。“实用功能胜过‘非我发明’的功能,这简直太棒了!”他这样写道。
以前可以通过Cygwin等第三方软件包在 Windows 上运行 Grep ,但 Coreutils 使用的 Rust 语言实现,因此具有原生功能的速度。
微软使用 Rust 构建 Coreutils,旨在提高内存安全性和跨平台可移植性。并且,该软件包采用宽松的 MIT 开源许可证,这也对微软有所帮助,从而规避了令鲍尔默感到不安的 GNU GPL 许可证的繁琐要求。
该项目当前未涉及某些个别 Unix/Linux 命令,例如逐字节复制命令 `dd`(文档指出“或许将来会有”)。还其他一些命令——例如原有的 DOS 排序和查找命令——则被集成到其对应的 Linux 版本中,以便在两种环境下都能正常工作。
因为 Windows 使用 ACL 来分配文件所有权,而不是 POSIX 标准权限位,因此 Linux 的所有权限设置命令(chcon、chgrp、chmod、chown、chroot、groups)对 Windows 来说没有任何意义,所以任何更改文件权限的脚本仍然必须经过再处理。
获取 Coreutils
可以通过 CMD WinGet 命令(“winget install Microsoft.Coreutils”)下载并安装 Coreutils,它只有大约 4.6MB。光是 grep 这个工具就值得下载,它是搜索庞大目录中所有文件的绝对王者。
目前Coreutils项目已在GitHub 上以开源包的形式发布,并持续由Microsoft 官方团队进行维护与更新。
https://github.com/microsoft/coreutils
微软此举是希望提升开发者使用Windows 平台的意愿,当开发者在Windows 下就能毫无障碍地使用所有熟悉的Linux 工具时,转换至Linux 桌面的诱因便随之降低。
随着AI Agents 时代的来临,自动化工具与多平台Script 兼容性的重要性大幅提升。微软正式收编并原生支援Linux 核心指令,不仅为开发者提供了极大的便利,更形同为未来AI 基础建设在Windows 平台上的最佳化奠定了基础。
作者:场长
本篇文章为 @ 场长 创作并授权 21CTO 发布,未经许可,请勿转载。
内容授权事宜请您联系 webmaster@21cto.com或关注 21CTO 微信公众号。
该文观点仅代表作者本人,21CTO 平台仅提供信息存储空间服务。
请扫描二维码,使用微信支付哦。