Cygwin provides access to all the common Unix tools from the Windows command line. It’s not the same as running Ubuntu but for all of us whose knowledge of the Microsoft command line effectively stopped with MS-DOS it’s a life saver. It is the first thing that I install on a new machine.
There are a number of limitations and annoyances with Cygwin, of course sanitizing Windows is a steep challenge, with poor screen handling the most frustrating to me. Changes in size to the command window aren’t always well reflected, it’s inconvenient to make the window wider, and when SSH’d horror often ensues.
I’ve found that puttycyg, a tweaked version of Putty, acting as a front end to Cygwin works far better. It is easy to setup, just extract the Zip and create a shortcut with putty.exe as a target and “-cygterm -” as a parameter.