He usado Cygwin y varias iteraciones de Inerix / SFU / SUA, así como CMD + unxutils y masilla, etc. Siempre se siente como luchar contra el sistema.
Powershell realmente me ganó (a pesar del nombre). Ahora solo uso powershell con algunos alias unixy, un puñado de scripts para emular comportamientos unixy y algunos puertos nativos de Windows como vim, infozip, ncftp, curl, wget, etc.
Depende de lo que intentes hacer. Si desea que Windows sea realmente unix, entonces nada se sentirá del todo bien y serán varios sabores frustrantes. Si desea portar software, hay muchas opciones con varios pros y contras. Si lo que desea es un potente entorno de secuencia de comandos y modo de texto en el que tenga la esperanza de replicar sus automatizaciones en los servidores o las máquinas de sus amigos, eche un vistazo a PowerShell.