Winix

The Unix Windows should have had.

Download Latest Release View on GitHub
Version MIT License Windows C/C++ CI

Winix is a free, open-source Windows shell and GNU coreutils suite — bringing bash-style scripting and 130+ Unix command-line tools natively to Windows. No WSL. No MSYS. No compatibility layers. Just fast, self-contained .exe files.

Features

Bash-Compatible Shell

Pipes, redirection, variables, functions, arrays, if/for/while/case, tab completion, command history, and PS1 prompts.

130+ Coreutils

Native Windows .exe equivalents of ls, grep, sed, awk, find, cat, diff, and many more.

No Dependencies

Self-contained binaries. No runtime installs, no WSL, no MSYS2, no Cygwin required.

One-Click Install

Download the zip, right-click install.bat as Administrator — done. Adds to PATH, Start Menu, and Windows Terminal.

Winix-Native Tools

nix (nano-style editor), wlint (code linter), wsim (similarity scorer) — purpose-built for Windows.

MIT Licensed

Clean-room implementations. Open source, auditable, and designed to outlive its creators.

Included Commands

CategoryCommands
File opsls, cp, mv, rm, mkdir, rmdir, touch, find, ln, chmod, chown
Textcat, grep, sed, awk, sort, uniq, wc, head, tail, cut, tr, diff
Archivegzip, gunzip
Hashingmd5sum, sha256sum, sha512sum, sha1sum, sha224sum, sha384sum, b2sum
Systemps, kill, uname, uptime, who, whoami, id, groups
Devbc, awk, xxd, hexdump, od, strings, expr, dd
Winix-nativenix (editor), wlint (lint), wsim (similarity)

Quick Install

  1. Download winix-vX.X-windows-x64.zip from the latest release.
  2. Extract the zip to any folder.
  3. Right-click install.batRun as administrator.

Windows SmartScreen warning? Click "More info""Run anyway". Winix is open source and built transparently by GitHub Actions CI.

PATH order matters. The installer adds C:\Winix\bin to your PATH. If Winix appears before C:\Windows\System32, GNU tools like sort and find will shadow their Windows equivalents — which is usually what you want, but may affect Windows scripts that rely on native behavior. If Winix appears after, Windows built-ins win for any name conflict. Adjust PATH order in System Properties → Environment Variables to match your preference.

Build from Source

Requires MinGW-w64 and CMake 3.20+.

git clone https://github.com/twbaty/winix.git
cd winix
build.bat
install.bat   # run as Administrator

See It in Action

Winix pipeline: echo | grep | sort
echo -e "..." | grep "^a" | sort
Winix for loop counting log levels
for level in INFO WARNING ERROR; do grep -c $level server.log; done
Winix grep -E filtering ERROR and WARNING lines
grep -E "ERROR|WARNING" server.log
Winix wc -l across multiple files
wc -l server.log access.log words.txt
Winix word frequency pipeline
sort words.txt | uniq -c | sort -rn | head -n 8

Guiding Principles

Native FirstAll binaries compiled for Windows — no MSYS, no WSL.
Behavioral ParityGNU defines the behavioral baseline, not the implementation.
Self-ContainedNo runtime dependencies — everything ships in the zip.
SimplicityReadable, maintainable code over clever hacks.
Open SourceMIT License, designed to outlive its creators.