我已连接到远程ubuntu服务器。在连接时,我想执行下面的shell命令
String command = "cd "to some directory" ;
sudo ./i3lsdd";
// want to move to a directory and execute sudo ./i3lsdd command.
我使用了下面的代码,但它给出了这个错误:
“sudo:没有tty存在且没有指定askpass程序抱歉,试试吧 试“。
非常感谢任何帮助。
答案 0 :(得分:1)
将命令“sudo ./i3lsdd”保存在主目录的.sh文件中。
使用
获取主目录路径String path = channelSftp.pwd();
按如下所示编写命令
String command = "sudo -S " + path + "/scriptname.sh";
使用以下代码提供密码
out1.write((sudo_pass + "\n").getBytes());
out1.flush();