有没有办法在 ConEmu 中“复制”会话。
我知道对于每种终端(cmd.exe、powershell 等)来说这是不可能的,但我最感兴趣的是以下情况:
- 我在 ConEmu 内的 cmd.exe 控制台中。
- 通过输入 Ctrl-T(我指定的快捷方式),我可以打开一个新的控制台选项卡,并带有一个新会话(cmd.exe)。
我想此会话与第一个会话在同一个目录中启动,原版。我感觉可以使用 %cd% 变量或类似变量来完成,但我无法做到。
答案1
变体 1
输入现存的cmd 提示符
cmd -new_console
然后按 Enter。您也可以为此序列创建热键/宏,例如AppsN-->
print("cmd -new_console\n")
或创建 cmd 文件或 doskey 别名。
变体 2
使用菜单项Duplicate root...
。它将复制当前选项卡(您调用菜单项的位置)的最父级(根)shell。您还可以在Settings
\中禁用重复确认Confirmation
。
变体 3
对于最新版本(从 140818 开始),您还可以%CD%
在Shell()
桂宏功能。如何设置你的 shell 描述这里。
Shell("", "cmd", "", "%CD%")
答案2
下面将对 PowerShell 执行相同的操作
ConEmu64.exe /config "shell" /dir "$(pwd)" /cmd powershell -new_console:n
我创建了以下函数并加载到我的 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
然后我可以在控制台中执行以下操作以在同一目录中创建一个新的 PowerShell 选项卡:
> sh
或者使用以下命令在不同的目录中创建一个选项卡:
> sh c:\some\directory\path