ニュース

「Coreutils for Windows」が一般提供 ~Linuxなどの定番コマンドをWindowsでネイティブ実行

macOS、WSL、コンテナー、クラウド環境などをまたいで作業する場合に

「Coreutils for Windows」が一般提供開始

 米Microsoftは6月2日(現地時間)、開発者向けカンファレンス「Build 2026」で、「Coreutils for Windows」の一般提供(GA)を発表した。LinuxやmacOSでおなじみのコマンドラインユーティリティをWindowsでもネイティブに実行できる。

 「Coreutils for Windows」は「GitHub」でホストされているオープンソースプロジェクトで、ライセンスは「MIT」。リリースページから無償でダウンロードできる。編集部ではまだ確認できていないが、「winget」コマンドでも簡単にインストールできるようだ。

winget install Microsoft.Coreutils

 含まれているコマンドは、「cat」「cp」「ls」「mv」「rm」といったお馴染みのもの。GNUの「coreutils」をRust言語で再実装したオープンソースプロジェクト「uutils/coreutils」をベースに、「findutils」とGNU互換の「grep」を加え、Microsoftが単一のパッケージにまとめているという。

「Coreutils for Windows」のインストーラー。オプションは既定のままで問題ないだろう

 最近のWindows開発者はLinux、macOS、WSL、コンテナー、クラウド環境などもまたいで作業することが多いが、コマンドに互換性がなく、Windows環境だけ特別な対応が必要になるのが難点だった。その点、「Coreutils for Windows」ならば同じコマンドやフラグ、パイプラインがそのまま動作するため、コマンドラインでの作業やスクリプトをある程度統一できるようになる。

 なお、「Coreutils for Windows」を利用するには「PowerShell 7.4」以降が必要。一部のコマンドは「コマンド プロンプト」や「PowerShell」の組み込みコマンドと名前が衝突するため、同梱されていなかったり、組み込みコマンドが優先されたりするので注意。

 また、Windowsの仕様上利用できないものや、Windows環境では意味のないコマンドも意図的に除外されている。テキストファイルの改行が「CRLF」になっている点や、Windows環境には「/dev/null」がないといった点なども、運用の際に気を付けた方がよいだろう。