Duplicate session in ConEmu
Is there way to "duplicate" session in ConEmu.
I know it's not possible for every kind of terminal (cmd.exe, powershell, etc), but I'm most interested in following situation:
- I'm in cmd.exe console inside ConEmu.
- By typing Ctrl-T (the shortcut I specified) I am able to open a new console tab, with a new session (cmd.exe).
I want this session to start in the same directory as the first one, original one. I'm feeling that it can be done with %cd% variable or similar, but I couldn't manage it.
Variant 1
Type in existing cmd prompt
cmd -new_console
and press Enter. Also you may create hotkey/macro for this sequence, for example AppsN -->
print("cmd -new_console\n")
or create cmd-file or doskey alias.
Variant 2
Use menu item Duplicate root...
. It will make a copy of your most parent (root) shell of the current tab (where you are calling menu item). Also you may disable duplicate confirmation in the Settings
\ Confirmation
.
Variant 3
With latest versions (from 140818) you also may use %CD%
environment variable within Shell()
GuiMacro function. How to set up your shell described here.
Shell("", "cmd", "", "%CD%")
The following will do the same thing for PowerShell
ConEmu64.exe /config "shell" /dir "$(pwd)" /cmd powershell -new_console:n
I created the following function that is loaded in my PowerShell profile
function Create-Console($path = $(pwd)) {
$console = Resolve-Path (join-path (join-path "$env:PROGRAMW6432*" "console*") "ConEmu64*");
. $console /config "shell" /dir "$path" /cmd powershell -new_console:n
}
Set-Alias sh Create-Console
Then I can execute the following in the console to create a new PowerShell tab in the same directory:
> sh
or create a tab in a different directory with:
> sh c:\some\directory\path