Ошибка при запуске команды SSH в Java - PullRequest
0 голосов
/ 16 августа 2011

Я пытаюсь запустить команду ssh в Eclipse таким образом

ExpectJ exp = new ExpectJ();    
Spawn s = exp.spawn("ssh root@192.168.1.2");
. . . 
. . . 
. . . 

Но я получаю это как ошибку-

Pseudo-terminal will not be allocated because stdin is not a terminal.

Если я попытаюсь сделать это следующим образом,

Spawn s = exp.spawn("ssh -t -t root@192.168.1.2");

и выполнить, я получаю эту ошибку

tcgetattr: Invalid argument

также, код выполняется только наполовину, и я получаю это сообщение -

Killed by signal 15.

и, наконец, я столкнулся с исключением по таймауту

Есть предложения? Я не уверен, что означают эти сообщения об ошибках.

Ответы [ 2 ]

0 голосов
/ 12 сентября 2011

Я могу использовать встроенный метод !! Никогда не осознавал, что вообще существует.

s = exp.spawn(hostName, sshPort, userName, userPassword);
0 голосов
/ 16 августа 2011

Я не уверен, почему вы получаете ошибки, которые видите, но могу сказать, когда мне нужно было выполнить ssh / scp и т. Д. Я использовал эту библиотеку: http://www.jcraft.com/jsch/ иэто сработало очень хорошо для меня.

...