Has anyone found a (eg bash) shell terminal for Windows as good as the OS X one?

Solution 1:

Have you tried console2?

It lets you use cmd, bash, or any program as your shell, and allows resizing in any direction.

You can make it default to Git Bash by going to Edit->Settings, then pasting this in the Shell field:

"C:\Program Files\Git\bin\sh.exe" --login -i"

To copy, hold Shift, click and drag with the left mouse button to select, then left click to Copy.

Finally, Git ships with rxvt. You could create a new Windows shortcut with the Target field set to:

"C:\Program Files\Git\bin\rxvt.exe" -e /bin/sh --login -i

Solution 2:

[Reposting my comment as an answer at Anentropic's request.]

If you're using Cygwin and like PuTTY, check out mintty. It's available in the Shells category in the Cygwin setup program (or get the source here). The author used large parts of PuTTY to create it, so it behaves very much like PuTTY. It can be configured to work like you'd like it to:

  • Resize the window just by dragging the edges or corners, like any other Windows app. This will resize the terminal by add or removing rows and/or columns, like you'd expect from something like xterm.
  • Copy/paste can be configured as single-click operations (e.g. left click to highlight and auto-copy, right click to extend, middle click to paste).
  • As with OS X Terminal, dragging a file or folder into a mintty window will paste the full path at the cursor position.
  • All Windows drives are available, "mounted" by default under /cygdrive (though I usually change this to /mnt with mount -c /mnt).

My only problem with mintty is that recent versions (0.9.4+) seem to be doing something that Windows 7 UAC doesn't like, so it prompts for permission to run it every time. This seems to cause it to run with different privileges, so things like my network drives don't work. I don't know if this is a mintty problem, or a problem with my system, though.

Solution 3:

Sorry for the self-promotion, I'm the author of another Console Emulator.

ConEmu is a Windows console emulator with tabs, which presents multiple consoles and simple GUI applications as one customizable GUI window with various features.

A brief excerpt from the long list of options:

  • Smooth resize, maximized and fullscreen window modes
  • User friendly text and block selection (from keyboard or mouse), copy, paste, text search in console
  • Run selected tabs as Administrator (Vista+) or as selected user
  • Running several shells in a grid/splitscreen (latest dev. build)
  • Use any font installed in the system, or copied to a folder of the program (ttf, otf, fon, bdf)
  • Windows 7 Jump lists and Progress on taskbar
  • Integration with DosBox (useful in 64bit systems to run DOS applications)
  • Scrollbar initially hidden, may be revealed by mouseover or checkbox in settings
  • Optional settings (e.g. pallette) for selected applications
  • ANSI X3.64 and Xterm 256 color

Hanselman's post, user's reviews, ConEmu tag on superuser.com