Duplicar sesión en ConEmu


10

¿Hay alguna forma de "duplicar" la sesión en ConEmu?

Sé que no es posible para todo tipo de terminal (cmd.exe, powershell, etc.), pero estoy más interesado en la siguiente situación:

  • Estoy en la consola cmd.exe dentro de ConEmu.
  • Al escribir Ctrl-T (el acceso directo que especifiqué) puedo abrir una nueva pestaña de consola, con una nueva sesión (cmd.exe).

Quiero que esta sesión comience en el mismo directorio que el primero , el original. Estoy sintiendo que se puede hacer con la variable% cd% o similar, pero no pude manejarlo.

Respuestas:


6

Variante 1

Escriba el indicador de cmd existente

cmd -new_console

y presione Entrar. También puede crear teclas de acceso rápido / macro para esta secuencia, por ejemplo AppsN->

print("cmd -new_console\n")

o crear cmd-file o doskey alias.


Variante 2

Usar elemento de menú Duplicate root.... Hará una copia de su shell más padre (raíz) de la pestaña actual (donde está llamando al elemento del menú). También puede deshabilitar la confirmación duplicada en el Settings\ Confirmation.


Variante 3

Con las últimas versiones (de 140818) también puede usar %CD%la variable de entorno dentro de la función Shell() GuiMacro . Cómo configurar su shell descrito aquí .

Shell("", "cmd", "", "%CD%")

Gracias. No es la solución perfecta, porque no funciona si estoy en medio de alguna aplicación (ssh, vagabundo, cualquier cosa que se pueda esperar por mucho tiempo). Pero es una solución. Y gracias de nuevo.
Michael Field el

Si está en un ssh medio (u otro), la "sesión duplicada" será ambigua. Porque "qué duplicar"? Tu sesión activa es ssh, no cmd. Sí, cmd puede estar en la parte inferior de la pila de procesos, pero ¿en qué estado se encuentra? Indeterminado, supongo ...
Maximus

Tienes razón. Pero aún así, muy a menudo necesito exactamente eso: duplicar el último estado de la parte inferior de la pila de procesos.
Michael Field

Bueno, verifique 121109. "Duplicar raíz" en el menú de la pestaña. Funciona con cmd.
Maximus

2

Lo siguiente hará lo mismo para PowerShell

ConEmu64.exe /config "shell" /dir "$(pwd)" /cmd powershell -new_console:n

Creé la siguiente función que se carga en mi perfil de PowerShell

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

Luego puedo ejecutar lo siguiente en la consola para crear una nueva pestaña de PowerShell en el mismo directorio:

> sh

o cree una pestaña en un directorio diferente con:

> sh c:\some\directory\path
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.