2013-12-20 3 views
0

Я пытаюсь выполнить последовательность команд, используя библиотеку JSch, все trought SSH:Выполнение Wget в удаленном сервере с JSch

  1. "кд/корень/загрузки /"
  2. «Wget mydownloadlink/file.rar»
  3. "УПП -f file.rar"

Но это не работает, посмотрите мир моего кода:

Channel channel = session.openChannel("exec"); 

      //Enter in directory to download 
      String cdCommand ="cd /root/downloads/"; 
      ((ChannelExec) channel).setCommand(cdCommand); 

      //Execute wget command 
      String wgetCommand = "wget "+linkDownload;   
      ((ChannelExec) channel).setCommand(wgetCommand); 

      // exec 'scp -f rfile' remotely 
      String command = "scp -f " + rfile; 
      ((ChannelExec) channel).setCommand(command); 

      // get I/O streams for remote scp 
      OutputStream out = channel.getOutputStream(); 
      InputStream in = channel.getInputStream(); 

      channel.connect(); 

ответ

0

channel.connect() выполняет (а) последнюю команду, которую вы предоставили вам. Вам нужно создать новый канал exec/connect для каждой команды, которую вы хотите запустить. Вы также должны открыть/получить поток ошибок, потому что в этом случае он, вероятно, обнаружил ошибку.

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