var exec = require('child_process').exec;
exec('ssh my_ip',function(err,stdout,stderr){
console.log(err,stdout,stderr);
});
これはフリーズするだけです-ssh my_ip
パスワードを要求したり、インタラクティブになったりするためだと思います。正しく行う方法は?
var exec = require('child_process').exec;
exec('ssh my_ip',function(err,stdout,stderr){
console.log(err,stdout,stderr);
});
これはフリーズするだけです-ssh my_ip
パスワードを要求したり、インタラクティブになったりするためだと思います。正しく行う方法は?
このページの他のライブラリには、低レベルの API があります。
そのため、軽量のラッパーを作成しました。node-sshもMIT ライセンスの下でGitHubから入手できます。
これを使用する方法の例を次に示します。
var driver, ssh;
driver = require('node-ssh');
ssh = new driver();
ssh.connect({
host: 'localhost',
username: 'steel',
privateKey: '/home/steel/.ssh/id_rsa'
})
.then(function() {
// Source, Target
ssh.putFile('/home/steel/.ssh/id_rsa', '/home/steel/.ssh/id_rsa_bkp').then(function() {
console.log("File Uploaded to the Remote Server");
}, function(error) {
console.log("Error here");
console.log(error);
});
// Command
ssh.exec('hh_client', ['--check'], { cwd: '/var/www/html' }).then(function(result) {
console.log('STDOUT: ' + result.stdout);
console.log('STDERR: ' + result.stderr);
});
});