微軟近日宣布推出Coreutils,這是Windows 11的一項新功能,允許開發者通過單個可執行文件,在Windows系統中原生運行多種常用的Linux命令行工具。
該功能在本周於西雅圖舉辦的Build 2026開發者大會上正式亮相,旨在降低開發者在Windows與其他平台之間頻繁切換時所產生的"認知負擔"。
目前,若要在Windows系統中使用那些在CI/CD開發環境中不可或缺的Linux命令行工具,開發者往往需要藉助繁瑣的變通方案,例如打開Git Bash等模擬器,或啟動虛擬化的Windows Linux子系統(WSL)終端。這兩種方式既耗時又低效。正如微軟公告所言:"開發者需要在不同平台之間不斷切換,但熟悉的命令往往無法穩定運行,導致不得不尋找變通辦法,不僅降低了開發效率,還造成大量上下文切換。"
Coreutils徹底解決了這一來回切換的問題,讓開發者能夠直接在Windows CMD命令提示符、PowerShell或Windows Terminal中運行大多數Linux命令。微軟表示:"無論是在Linux、macOS、WSL、容器還是雲環境之間切換,你多年積累的命令和工作流程,現在在Windows環境中同樣可以直接使用。"
Coreutils以單個可執行文件的形式安裝(通過WinGet安裝:install Microsoft.Coreutils),其本身是對GNU uutils/coreutils項目的Rust重寫版本,提供跨Linux發行版通用的命令支持。
Coreutils高效管理的核心在於:各個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中)別名表的設置。"
除Coreutils外,Build 2026開發者大會還見證了微軟的多項重要發布:面向在Windows上部署Linux容器的WSL容器CLI和API、配備開源治理工具的自主智能體新框架,以及專為自動化Microsoft 365任務而設計的AI智能體Microsoft Scout。
Q&A
Q1:Windows版Coreutils是什麼?它支持哪些Linux命令?
A:Coreutils是微軟為Windows 11推出的新功能,允許開發者通過單個可執行文件在Windows中原生運行Linux命令行工具,無需藉助Git Bash或WSL。目前共支持75個Linux工具,包括ls、cp、find、grep、rm、du、hostname、uptime等常用命令。
Q2:Windows版Coreutils安裝方式是什麼?
A:Coreutils通過WinGet包管理器安裝,安裝命令為:install Microsoft.Coreutils。安裝後以單個可執行文件存在,各Linux命令通過NTFS硬鏈接映射,只需維護一個二進制文件,升級和簽名管理都十分便捷。
Q3:Windows版Coreutils有哪些命令不可用?
A:由於與CMD或PowerShell存在命令衝突,dir、expand、kill、more、timeout、whoami等命令暫不可用。另外,chmod、chown、id、stty、chroot等依賴POSIX特性的命令因Windows不支持相應實現也被排除在外。部分命令在CMD中可用,但在PowerShell中無法執行,具體取決於Shell類型、PATH順序和別名表設置。






