Hi Microsoft Coreutils team — I noticed your project while working on WinuxCmd (https://github.com/caomengxuan666/WinuxCmd) and wanted to share some notes from a different approach to the same problem space.
WinuxCmd takes a Windows-native design philosophy rather than a Linux-to-Windows port. Commands are reimplemented from the ground up for the Windows environment — no WSL, no MSYS2, no POSIX layer. ~900KB single binary, 148 commands, designed to work with Windows tools in the same pipeline (netstat -ano | grep 8080 works out of the box).
The alias conflicts documented in your ⚠️ table (cat, cp, rm, ls conflicting with PowerShell aliases) are exactly what we ran into. Our solution: scripts/create_links.ps1 sets up individual symlink/hardlink entry points at install time, and parent shell detection automatically routes unknown commands back to the parent cmd/PowerShell — so users never get stuck wondering "which version is running?"
One more thing: your README marks kill as 🛑 not shipped due to no POSIX signals, but we found process enumeration + terminate by PID works perfectly fine on Windows. Worth reconsidering if users ask for it.
Shell integration docs: https://github.com/caomengxuan666/WinuxCmd/blob/main/DOCS/en/winux_shell_integration_en.md
Scripts: https://github.com/caomengxuan666/WinuxCmd/tree/main/scripts
Different approaches, same problem space. Happy to exchange notes. Keep up the great work!
Hi Microsoft Coreutils team — I noticed your project while working on WinuxCmd (https://github.com/caomengxuan666/WinuxCmd) and wanted to share some notes from a different approach to the same problem space.
WinuxCmd takes a Windows-native design philosophy rather than a Linux-to-Windows port. Commands are reimplemented from the ground up for the Windows environment — no WSL, no MSYS2, no POSIX layer. ~900KB single binary, 148 commands, designed to work with Windows tools in the same pipeline (netstat -ano | grep 8080 works out of the box).
The alias conflicts documented in your⚠️ table (cat, cp, rm, ls conflicting with PowerShell aliases) are exactly what we ran into. Our solution: scripts/create_links.ps1 sets up individual symlink/hardlink entry points at install time, and parent shell detection automatically routes unknown commands back to the parent cmd/PowerShell — so users never get stuck wondering "which version is running?"
One more thing: your README marks kill as 🛑 not shipped due to no POSIX signals, but we found process enumeration + terminate by PID works perfectly fine on Windows. Worth reconsidering if users ask for it.
Shell integration docs: https://github.com/caomengxuan666/WinuxCmd/blob/main/DOCS/en/winux_shell_integration_en.md
Scripts: https://github.com/caomengxuan666/WinuxCmd/tree/main/scripts
Different approaches, same problem space. Happy to exchange notes. Keep up the great work!