In the meantime, a popular console emulator that mimics Linux on Windows is Cmder, which is running ConEmu under the covers. I recommend downloading the Full version that includes Git for Windows since most developers are using Git and GitHub for project version control.
Cmder gives you back the the most common, familiar Linux commands. If you've been using the MacOS Terminal, you're used to opening a new tab in the current working directory with Cmd+T. Unfortunately Cmder doesn't do this be default and figuring out how to do it is maddeningly difficult. Thanks to this tip, I will explain how to do it.
ConEmu offers several choices for consoles, like the old-school cmd, the newer PowerShell, and Bash. I use {Bash::Git bash} as my preferred console.
You have a lot of control of the commands it runs when it opens a new window. You can find them under Settings (Win+Alt+P) > Startup and Settings > Startup > Tasks.
To use hotkey Ctrl+T to open a new tab with the Bash shell in the current directory, rather than the default directory:
- Go to Settings > Startup > Tasks
- Select the {Bash::Git bash} option
- Set the Hotkey to Ctrl+T
- Modify the command to start with -new_console:d:"%CD%"
- Save settings
The d: option sets the startup directory and the "%CD%" option uses the current directory.
In order for it to read the current directory into environment variable %CD%, you have to enable it in your .bash_profile or .bashrc startup script. In ~/.bash_profile add this:
if [[ -n "${ConEmuPID}" ]]; then export PROMPT_COMMAND='ConEmuC -StoreCWD' fi
See also:
Cmder documetation on GitHub
Cmder wiki
ConEmu documentation