0

「passwd」コマンドを phpseclib を使用して自分のマシンに解析しようとしましたが、最初のパスワード入力を通過できません。以下のコードを見てください。

$ssh->write("
    passwd $new_user\n
    $new_user_pw\n
    $new_user_pw\n 
"); 
$ssh->setTimeout(5);
echo $ssh->read('root@machine:~$');

私が得た出力は次のとおりです。

Last login: Tue Jun 17 12:23:01 2014 from 109.175.60.43 [root@machine ~]# [root@machine ~]# [root@machine ~]# passwd 8917f498 Changing password for user 8917f498. New password: 

または、別の方法でこれを行うことができますか?

ありがとう

4

3 に答える 3

1

わかりました、私はそれを修正しました。

このコードは機能します:

$ssh->enablePTY(); 
        $ssh->exec('passwd $new_user'); 
        echo $ssh->read('password:'); 
        $ssh->write("$new_pw\n"); 
        $ssh->setTimeout(3); 
        $ssh->write("$new_pw\n"); 
        $ssh->setTimeout(3); 
        echo $ssh->read('password changed');
于 2014-06-17T17:19:20.757 に答える