Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   помощь в скрипте подключения ssh (multi) (https://javascript.ru/forum/misc/62862-pomoshh-v-skripte-podklyucheniya-ssh-multi.html)

Dilettante_Pro 05.05.2016 16:01

SpaceAlarm,
А вы ssh по одному каналу запускали?
new Client() у вас откуда? Из какой библиотеки?

SpaceAlarm 05.05.2016 16:06

var Client = require('ssh2').Client;

Dilettante_Pro 05.05.2016 16:08

SpaceAlarm,
А вы ssh по одному каналу подключали?

SpaceAlarm 05.05.2016 16:08

Не совсем понял, в смысле по одному?
Вы про массив?

Dilettante_Pro 05.05.2016 16:40

SpaceAlarm,
Просто по одному каналу, без всяких массивов

SpaceAlarm 05.05.2016 16:44

Да, естественно, по 1 работает

Dilettante_Pro 05.05.2016 16:52

SpaceAlarm,
В строке 11 в конце надо ;
Внимательно просмотрите все скобочки, лучше в редакторе с форматированием скрипта

SpaceAlarm 05.05.2016 17:31

нет, проблема та же осталась
conn[i].exec(command,function(err, stream) {
           ^
TypeError: Cannot read property 'exec' of undefined

Dilettante_Pro 05.05.2016 18:43

Цитата:

Сообщение от SpaceAlarm (Сообщение 415746)
нет, проблема та же осталась
conn[i].exec(command,function(err, stream) {
           ^
TypeError: Cannot read property 'exec' of undefined

И при этом строки
conn[i] = new Client();
    conn[i].on('ready', function() {

Идут без ошибок:( ???
Может, вам попробовать обратиться в раздел NODE.JS http://javascript.ru/forum/node-js-io-js/ ?

SpaceAlarm 05.05.2016 18:58

как видишь :(
function server1 (){

var  hostParamsArray =  new Array();
     hostParamsArray[0] =  { host: '', port: 22, username: '', password: '' };
	 hostParamsArray[1] =  { host: '', port: 22, username: '', password: '' };
	  
var command = "", conn = [];	
for (var i = 0; i < hostParamsArray.length; i++) {
    conn[i] = new Client();
    conn[i].on('ready', function() {
   logger.info('SSH Successful connection:  Server#' +(i + 1));
	command = "touch test.log";
    conn[i].exec(command,function(err, stream) {
    if (err) throw err;
    stream.on('close', function() {
      console.log('Stream :: close');
      conn[i].end();
    }).on('data', function(data) {
      console.log('STDOUT: ' + data);
	  if(data.indexOf('123') + 1){
		logger.info('Update');
	  }
    }).stderr.on('data', function(data) {
      console.log('STDERR: ' + data);
    });
  });
}).connect(hostParamsArray[i])
        conn[i].on('error', function(err) {
            console.log(err);
});
}}


conn[i].exec(command,function(err, stream) {
           ^
TypeError: Cannot read property 'exec' of undefined


в том разделе почти не помогают..


Часовой пояс GMT +3, время: 11:15.