2012-06-06 2 views
1

В:Как настроить взаимодействие node.js с приложением оболочки?

node js interact with shell application

Trindaz связано с его видео на YouTube, демонстрирующий, как взаимодействовать с Баш оболочки (включая переводчиков, доступных из оболочки):

http://www.youtube.com/watch?v=16nFMucvwYQ

Однако я не мог следовать кадры от 20 секунд до 54 секунд. Через 54 секунды окно браузера показывает:
....................................
подключен
$ войти в
$
.....................................

Каковы шаги, необходимые для перехода к этому окну? Любые намеки или рекомендации будут оценены.

Спасибо,

RP

+2

Автор видео демонстрирует приложение, которое он написал. Он не описывает, как он это написал (кроме высокоуровневого обзора модуля child_process между 0:20 и 0:30) и не ссылается на какой-либо исходный код. –

ответ

0

Я не точно повторить то, что есть в видео, но я надеюсь, что образец, как показано ниже, должны это сделать.

Вот как я настроил серверную часть.

var app = require('express').createServer(), 
    io = require('socket.io').listen(app), 
    sys = require('util'), 
    exec = require('child_process').exec; 

app.listen(4990); 

io.sockets.on('connection', function(socket) { 
    socket.on('console', function(command, callBack) { 
     // client sends {command: 'ls -al'} 
     function puts(error, stdout, stderr) { 
      socket.emit('commandresult', stdout); 
     } 
     exec(command.command, puts); 
    }); 
});​ 

Надеюсь, вы сможете сделать клиентскую часть.

Надеюсь, что это поможет

+0

to Dhiraj: Благодарим вас за ответ. В настоящее время я недостаточно знаю, чтобы проверить ваш ответ, но мне интересно, разрешит ли он взаимодействие с интерпретатором (например, Python), как это делает код Trindaz. RP –