2016-04-08 7 views
2

現在表示されているコンソールから別のプロセスからコマンドを実行したいと考えています。具体的には、このConEmuコンソールの内部から起動したgvimインスタンスからビルドコマンドをディスパッチしたいと思います(ConEmuHWNDなどのConEmuで設定されたさまざまな変数があります)。他のプロセスからConEmuインスタンスを実行する際にコマンドを実行する方法

は、これまでのところ、私はこの1と密接してきた:開き

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

は私のConEmuウィンドウに新しいタブを追加し、指定されたコマンドを実行します。 このようなものがありますか?

答えて

2

あなたはどう思いますか?さて、あなたのシェルがインタラクティブループの中にあるとき、ConEmuは新しいプロセスを開始します。何が起こるでしょうか?どちらもコンソールを読み取り、コンソール・イベント(CtrlCなど)を処理し、多くの競合条件を持ちます。そのため、ConEmuでは実装されていません。

最も適切な方法 - 新しいタブを開始しています。既に行っていることです。

GuiMacro Pasteでシェルプロンプトにコマンドを貼り付けます。コマンドに\nを追加することで、自動的に実行することもできます。もちろん、シェル(アクティブなタブ)がインタラクティブなサイクルの中にないと、このメソッドは失敗します。

+0

私はちょうどこれで本当に便利なマクロを見つけました。この種の行を使って私の目標を達成しています: 'ConEmuC/GUIMACRO:" ";キー "{Enter}" ' 'シェル "new_console:sH" "" <いくつかのコマンド><作業ディレクトリ> ' この素晴らしい製品のおかげで、新しいコンソールスポーンのセカンダリマクロは、偉大な仕事を続けている! – Fr0stBit

関連する問題