Eu usei o Cygwin e várias iterações do Inerix / SFU / SUA, além de CMD + unxutils e putty, etc. Sempre parece uma luta contra o sistema.
Eu realmente fui conquistado pelo PowerShell (apesar do nome). Agora apenas uso o powershell com alguns aliases unixy, um punhado de scripts para simular comportamentos unixy e algumas portas nativas do Windows, como vim, infozip, ncftp, curl, wget, etc.
Depende do que você está tentando fazer. Se você deseja que o Windows seja realmente unix, nada parecerá certo e haverá vários sabores frustrantes. Se você deseja portar software, há muitas opções com vários prós e contras. Se o que você deseja é um poderoso ambiente de shell e script em modo de texto em que você tenha a esperança de replicar suas automações em servidores ou máquinas de seus amigos, dê uma olhada no PowerShell.