使用当前路径更新 ConEmu 选项卡

tay*_*onr 9 powershell conemu

在 ConEmu 上,我打开了一个 powershell 控制台。我希望选项卡的标题反映我所在的当前文件夹。但是,默认情况下,标题是“Windows Powershell”。

我在我的任务中将标签标题指定为“C:\Code”,它会更新,但这是硬编码的。

有没有办法打开 powershell 控制台,并在我导航时让它在选项卡标题中显示当前目录?

Max*_*mus 10

电源外壳

更改promptpowershell 配置文件中的功能。

在编辑器中打开您的个人资料,例如记事本

new-item -itemtype file -path $profile
notepad $profile
Run Code Online (Sandbox Code Playgroud)

添加以下功能以在每次出现提示时更改(实际重命名)ConEmu选项卡

function prompt
{
  & "$env:ConEmuBaseDir\ConEmuC.exe" "/GUIMACRO", 'Rename(0,@"'$(Get-Location)'")' > $null
  return "PS " + $(Get-Location) + ">"
}
Run Code Online (Sandbox Code Playgroud)

或使用以下代码更改控制台标题,但不是选项卡

function prompt
{
  & "$env:ConEmuBaseDir\ConEmuC.exe" "/GUIMACRO", 'Rename(1,@"'$(Get-Location)'")' > $null
  return "PS " + $(Get-Location) + ">"
}
Run Code Online (Sandbox Code Playgroud)

如果您需要在 ConEmu 之外使用 PowerShell,则可能需要更改此代码。


cmd(让它成为一个答案)

如果您正在使用cmd.exe,您可以使用promptANSI使用 cmd 的当前目录更新 ConEmu 选项卡。只需按如下方式运行您的 cmd:

cmd /k prompt $p$e]9;3;"$p"$e\$g & title cmd
Run Code Online (Sandbox Code Playgroud)

为了能够处理 ANSI,您需要在 ConEmu 的设置页面中启用Inject ConEmuHkANSI X3.64选项Features(默认情况下它们是启用的)。右键单击 ConEmu 的窗口标题或按下WinAltP打开Settings对话框。

注意,& title cmd在示例中不是必需的,只是为了美化窗口标题。