我有一个 ConEmu 宏,用于Ctrl+T
运行Task("Powershell")
。我的 Powershell 任务只是使用参数运行 powershell \dir %userprofile%
。
“关于 ConEmu”中的宏选项卡显示该Task
命令可以为目录接受第二个参数:
Task("Name"[,"Dir"])
- start task with specified name
我想让我的宏打开一个新选项卡,其工作目录与我按下 Ctrl+T 时正在查看的选项卡相同。这可能吗?
答案1
当您在 powershell 中“CD”时,它实际上并没有改变当前进程目录(SetCurrentDirectory
未被调用)。例如,您可以使用 ProcessExplorer 检查这一点。
因此,您可以从活动的 powershell 提示符运行
PowerShell -new_console
或者这样做桂宏。使用 GuiMacro 您可以为该操作设置任何所需的热键。
Print("\ePowerShell -new_console\n")
理论上,你可以在不使用活动 powershell 提示符的情况下创建新选项卡,还有另一种宏,但您需要强制您的 PowerShell 明确调用SetCurrentDirectory
。例如,您可以prompt
在 powershell 配置文件中覆盖您的函数。