1

У ConEmu есть хорошая возможность использовать -new_console при запуске приложений, чтобы они находились на новой вкладке.

Делая это с putty , putty -new_console , он даже красиво интегрирует терминал putty внутри новой вкладки.

Однако, когда я запускаю скрипт узла, который использует exec('putty -new_console') он открывает новую вкладку, но не удается перехватить запущенный терминал замазки.

Я читал большую часть вики ConEmu, пытаясь найти что-то связанное с другим процессом, являющимся родителем запущенного процесса, в надежде найти решение в этом направлении, но мне не удалось заставить его работать.

Для воспроизведения этого должно быть достаточно:

var exec = require('child_process').exec; exec('putty -new_console');

Этот фрагмент кода node.js откроет новую вкладку, запустит замазку, но не захватит окно терминала.

1 ответ1

1

Ваш звонок не выполняет putty.exe напрямую! Вместо этого он запускает cmd.exe с ключом /c. Если курс -new_console запустит cmd.exe в новой вкладке. И тогда замазка не будет прикреплена как вкладка ChildGui во вкладку ConEmu, потому что такого запроса не было!

Вы должны заставить свой узел выполнить правильную команду. И это не связанный с ConEmu вопрос.

В качестве обходного пути вы можете сделать следующий звонок

exec('ConEmu /reuse /cmd putty')

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .