【问题标题】:How to run command in running ConEmu instance from other process如何在从其他进程运行 ConEmu 实例时运行命令
【发布时间】:2016-04-08 17:40:53
【问题描述】:

我希望能够在当前可见的 conemu 控制台中从另一个进程执行命令。具体来说,我想从这个 ConEmu 控制台内部启动的 gvim 实例调度我的构建命令(因此它具有由 ConEmu 设置的各种变量,如 ConEmuHWND 等......我认为这是解决方案的关键)。

到目前为止,我一直很接近这个:

!start ConEmuC.exe /ATTACH /GHWND=<ConEmuHwnd from env var here> /C <my build command>

which opens 在我的 ConEmu 窗口中添加一个新选项卡并执行给定的命令。 这样的事情可能吗?

【问题讨论】:

    标签: conemu


    【解决方案1】:

    你是怎么想象的?好吧,当你的 shell 在交互式循环中时,ConEmu 会启动新进程,会发生什么?两者都会读取控制台,处理控制台事件(如 CtrlC)并且有很多竞争条件。这就是为什么它没有在 ConEmu 中实现。

    最正确的方法 - 开始新标签,你已经做了什么。

    还有另一种方法 - 使用 GuiMacro Paste 将命令粘贴到 shell 提示符中。您甚至可以通过将\n 附加到命令来自动执行它。当然,如果你的 shell(活动标签)不在交互循环中,这个方法会失败。

    【讨论】:

    • 我只是碰巧找到了一些非常方便的宏,我现在正在使用这种行来实现我的目标:ConEmuC /GUIMACRO:&lt;HWND&gt; Print "&lt;some command&gt;"; Keys "{Enter}" 我还使用辅助宏来生成新的控制台,形式为:Shell "new_console:sH" "" &lt;some command&gt; &lt;working directory&gt; 感谢您提供这款出色的产品,并继续做得很好!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-11-25
    • 1970-01-01
    相关资源
    最近更新 更多