1

私は Ubuntu 9 を使用することに疑いの余地があり (選択の余地はありません)、それに Node.js をインストールしました。

SCP を使用したい (ssh 経由でファイルをコピーするため)。だから私は少しノードマジックをします:

scpHandler = require('child_process').spawn('scp',['root@192.168.2.16:/user/MyDocs/smsOut.txt', 'smsOut2.txt']);

そして、問題があるようです-sshにはパスワードが必要です。この特定のデバイス(Maemo)で動作しないため、authorization_keysによってその問題を省略することはできません。

だから私は考えました-わかりました、私はストリーム書き込みを使用するだけですべてを解決します:

scpHandler.stdout.on('data', function(data){
  console.log(data);
  scpHandler.stdin.write('password');
  scpHandler.stdin.write('String.fromCharCode(13)');
});

scp がメッセージを表示した後、パスワードの書き込みを反映する必要があります (そしてすぐにパスワードを要求します)。sc が正しいパスワードを取得すると、転送の成功/失敗後にいくつかのデータが表示されるはずですが、それでもパスワードを待ちます...助けてください、何が間違っているのでしょうか?

4

1 に答える 1

2

問題解決: setTimeout を待機に使用し、pty.js を端末の欺瞞に使用することは、この場合は問題ないようです。

于 2013-01-24T09:54:01.140 に答える