2013-04-24 3 views
0

Я подключился к удаленному серверу ubuntu. В связи с этим я хочу, чтобы выполнить следующие команды оболочкиjsch и работает sudo из определенного каталога

String command = "cd "to some directory" ; 
sudo ./i3lsdd"; 
// want to move to a directory and execute sudo ./i3lsdd command. 

Я использовал следующий код, но он дает эту ошибку:

"sudo: no tty present and no askpass program specified Sorry, try again."

Любая помощь высоко ценится.

ответ

1

Сохраните команду «sudo ./i3lsdd» в .sh-файле в домашнем каталоге.

Получить путь к каталогу дома с помощью

String path = channelSftp.pwd(); 

Написать команду, как показано ниже

String command = "sudo -S " + path + "/scriptname.sh"; 

Введите пароль с кодом ниже

out1.write((sudo_pass + "\n").getBytes()); 
out1.flush(); 
Смежные вопросы