2013-11-21 4 views
0



Я использую Ganymed SSH для выполнения команд на моем Linux-машине из приложения Java. Я должен выполнить 100 команд один за другим.Непрерывное выполнение команд в Linux с использованием Ganymed SSH

Для этого в моем коде для цикла for я открываю и закрываю сессию для каждой итерации. Но это вызывает некоторое исключение после 10 или 15 итераций, говорящих, что невозможно установить соединение.

Я считаю, что это происходит потому, что сеансы не создаются часто.

Пожалуйста, проверьте приведенный ниже код и дайте мне несколько полезных решений для достижения этого.

для пользователя (Строка: ) Список пользователей задается
{
сессия = connection.openSession();
session.execCommand ("[-f /home/"+user+"/.file_name] & & echo \" Найдено \ "|| echo \" Not Found \ "");
session.close();
}

Благодаря & С уважением,
Гупта Katakam

ответ

1

Если вы попытаетесь сделать это, вы будете в конечном итоге в ситуации, в которой вы находитесь. SSH имеет множество параметров конфигурации, но что вам нужно указать в конце машины. Я не уверен, что у вас есть доступ к конечной машине или нет, но если у вас нет доступа к целевой машине, подумайте над добавлением некоторой задержки на ваш код после отключения и повторного подключения. У меня также была проблема с той же проблемой, хотя я использовал другую библиотеку. Дайте мне знать, если это работает или нет, и тогда мы сможем оттуда оттуда оттуда.

+0

Я устал от использования Thread.sleep (500); Он работает для меня на моей локальной машине, но я не уверен, будет ли это работать в клиентской системе или нет. Именно по этой причине я хочу, чтобы решение получило что-то из фреймворка (Ganymed). –

+0

Почему вы говорите, что я не буду работать в системе клиента? он будет работать там также, если он работает в вашей локальной коробке. – aryann

+0

Хорошо, тогда надеемся на лучшее Спасибо –

Смежные вопросы