Coreutils for Windows CLI

A Unix-style command suite brings familiar file and text processing to the Windows terminal without a separate Linux environment.

  • 5,353 ★ on the repository
  • Last commit
  • MIT
CLI

Extended access

Why this level

  • File utilities can write, move and delete data with the user’s permissions.
  • Installation changes available commands and interactive PowerShell integration.
All reasons and checks

microsoft/coreutils

Install

Manual install

winget install Microsoft.Coreutils

First Install method, using the Windows WinGet package.

Access and checks

How we review

Extended accessThe tool runs code or makes network calls and only reads external data.

  • File utilities can write, move and delete data with the user’s permissions.
  • Installation changes available commands and interactive PowerShell integration.

This is third-party code. Review the repository files before installing.

What it does

The preview build of Microsoft Coreutils packages uutils/coreutils, findutils and grep in a single multi-call Windows binary. Users invoke familiar text processing, search and file commands. Shared syntax reduces differences between Linux and Windows scripts. The installer integrates with interactive PowerShell through PSReadLine to make quoted expressions and file patterns behave more like Unix. Windows built-in command conflicts are documented separately. A management command can disable individual utilities.

Who it is for. Windows developers adapting terminal workflows from Linux and investigating shell differences.

Good fit when

  • An agent-prepared Unix command workflow needs adapting for Windows.
  • Text processing should run in PowerShell without starting WSL.
  • A conflicting utility needs disabling without removing the whole suite.
  • A cross-platform workflow needs output differences identified before use.

Not a fit when

  • A script depends on POSIX signals or Unix permission commands.
  • The workflow requires a stable release without preview status.
  • Scripts cannot be checked for path, line-ending and built-in command differences.

Example request

Prepare Unix-style log processing on Windows and identify PowerShell name conflicts separately. Leave original files unchanged.

Limitations

PowerShell 7.4 or later is required, with 7.6 recommended for expanding `~`. PowerShell aliases, CMD built-ins and `PATH` order affect which program runs; the installer does not remove aliases. Windows lacks POSIX signals and Unix permission bits, so some utilities are omitted and permission checks can differ. CRLF line endings and backslashes in output can change how the next command in a pipeline handles that text.

How to disable. Disable a conflicting utility with `coreutils-manager disable <utility name>` or uninstall the Windows package. Remove custom shell-profile aliases separately.

FAQ

How do I install the suite?

Run `winget install Microsoft.Coreutils`, then check your PowerShell version and use `--help` for the utility you need.

Why does Get-Command still show an alias?

Integration rewrites interactive input but keeps the PowerShell alias table. `Get-Command ls` and `Get-Help ls` may still refer to built-ins; compare the [conflict table](https://github.com/microsoft/coreutils#shell-conflicts).

How do I disable one utility?

Use `coreutils-manager disable <utility name>` with the actual utility name. See `coreutils-manager --help` for other management actions.

Can I keep using /dev/null?

Use `NUL` on Windows. The documented example is `find . -name "*.log" > NUL`.

Why are chmod and chown absent?

Windows uses ACLs rather than Unix permission bits, and these commands are omitted. Identify permission operations before porting a script and use an appropriate Windows tool.

Discussion

No questions or reviews yet.

CLI tools

uutils coreutils provides Rust file utilities that can sit beside system commands for comparisons with existing scripts.

CLIExtended access24.3KRepository stars

nnn manages files in a terminal with selection, batch renaming, disk analysis, bookmarks and optional plugin extensions.

CLIExtended access22.1KRepository stars

Windows Dev Skills

win-dev-skills

Official

Agent Plugins 1.0 from Microsoft for GitHub Copilot CLI, Claude Code and Codex: native Windows apps on WinUI 3 and the Windows App SDK. A preview version

PluginExtended access498Repository stars

broot is a terminal file manager that calculates directory sizes in the background to show large folders before cleanup.

CLIExtended access13.1KRepository stars
Russian stack

A portable OpenCode build for Windows x64 with the full 79-skill 1C development set, with the risky web-publish skill disabled by default

CLIExtended access2Repository stars
Russian stack

A VS Code and Cursor extension for 1C: vanessa-runner commands, metadata, debugging, tests and skills for AI agents.

PluginExtended access240Repository stars

README in short

Interactive PowerShell retains the backtick as its escape character. Existing symbolic links can be read without elevation; creating them requires Developer Mode or elevated permissions.

README badge

Report a problem

Foxx AICoreutils for Windows
Foxx AI

I am Foxx AI and I have already vetted this tool. Ask about install, setup or anything else, and I will keep it simple.