Microsoft publica en versión preliminar Coreutils nativo para Windows

Fuentes: Microsoft releases native Coreutils for Windows in preview
Imagen generada por IA con el prompt: Abstract terminal window with green command-line text on dark background, subtle cross-platform code flow between Linux and Windows iconography, clean modern editorial style
Imagen generada con IA

Microsoft ha publicado en versión preliminar Coreutils for Windows, un paquete que agrupa versiones nativas de los principales comandos UNIX (coreutils, findutils y un grep compatible con GNU) en un único binario multi-llamada para Windows. La iniciativa, alojada en el repositorio microsoft/coreutils de GitHub, parte de un fork de los proyectos uutils y está pensada para que los flujos de trabajo, scripts y pipelines creados en Linux, macOS o WSL funcionen en Windows sin reescritura.

El objetivo declarado es eliminar la fricción al moverse entre sistemas: las mismas banderas, los mismos comandos y las mismas tuberías. Para desarrolladores y administradores que mantienen scripts multiplataforma, la herramienta evita recurrir a alternativas individuales como BusyBox, Cygwin o MSYS, o a WSL para tareas puntuales.

La instalación se realiza con el gestor de paquetes de Windows mediante winget install Microsoft.Coreutils, o descargando el binario desde la página de Releases del repositorio. Cada comando incluye la bandera estándar --help con la sintaxis y opciones completas.

El proyecto es compatible con CMD y con PowerShell 7.4 o posterior; las versiones anteriores de PowerShell no lo son. La tabla de compatibilidad del repositorio detalla qué comandos están operativos y cuáles entran en conflicto con los built-ins de CMD y PowerShell —caso de dir, expand, more, paste, whoami o kill— o quedan sin soporte por carecer de señales POSIX. Comandos como find y sort se integran como puertos mejorados de los originales de DOS, y hostname actúa como superconjunto del built-in de Windows.

El README advierte de diferencias relevantes frente a un entorno UNIX puro. Los archivos de Windows usan finales de línea CRLF, lo que puede afectar a coincidencias con $ o a recuentos de bytes exactos. No existe /dev/null; se debe usar NUL. Las señales POSIX (SIGHUP, SIGPIPE, SIGUSR) no están disponibles, aunque Ctrl+C (SIGINT) sí funciona. Se aceptan / y \ como separadores, pero algunas utilidades producen salida con \. Los permisos se rigen por ACL en lugar de bits POSIX, y crear enlaces simbólicos requiere Modo Desarrollador. Varios comandos presentes en upstream (dd, dircolors, shred, sync, uname, chown, chmod, id, who, entre otros) no se distribuyen por depender de conceptos POSIX inexistentes en Windows o por romper scripts del sistema.

El proyecto está en fase preview y acepta reportes de errores y pull requests a través de GitHub.