Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/323.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/unix/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jsp/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用java更改远程unix服务器的密码_Java_Unix_Jsch_Passwd - Fatal编程技术网

使用java更改远程unix服务器的密码

使用java更改远程unix服务器的密码,java,unix,jsch,passwd,Java,Unix,Jsch,Passwd,我正在寻找一种通过java代码将passwd发送到远程unix服务器的方法。我正在使用Jsch,我可以成功地执行find、zip、get等命令。但当我传递“passwd”命令时,什么也没发生。其目的是创建一个应用程序,该应用程序可以每10天更改unix服务器的密码 这是我正在尝试使用的代码(find命令工作正常) passwd命令需要交互输入(即从stdin读取),请参阅了解我在不使用线程的情况下运行下一个命令的情况。睡眠工作: echo -e \"new-password\nnew-passw

我正在寻找一种通过java代码将passwd发送到远程unix服务器的方法。我正在使用Jsch,我可以成功地执行find、zip、get等命令。但当我传递“passwd”命令时,什么也没发生。其目的是创建一个应用程序,该应用程序可以每10天更改unix服务器的密码

这是我正在尝试使用的代码(find命令工作正常)


passwd
命令需要交互输入(即从stdin读取),请参阅了解我在不使用线程的情况下运行下一个命令的情况。睡眠工作:

echo -e \"new-password\nnew-password\" | passwd user-linux

如果我不得不猜测的话,问题是
passwd
在您运行它之后请求输入,而您的程序可能无法正确处理。请发布一些相关的代码,这样我们就可以看到你现在正在做什么。您是否能够与请求用户输入的其他命令交互,或者仅与发送到STDOUT的命令交互?在(!ch.isClosed())测试时,请不要使用
available()
。他们俩都不像你想的那样。循环应该是
while((字节=in.read(buffer))>0).
echo -e \"new-password\nnew-password\" | passwd user-linux