Guest User

Untitled

a guest
Jan 24th, 2018
85
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.94 KB | None | 0 0
  1. var spawn = require('child_process').spawn,
  2. fs = require('fs'),
  3. sys = require('sys');
  4.  
  5. function ssh(username, host, file) {
  6. fs.readFile(file, function (err, data) {
  7. if (err) throw err;
  8.  
  9. var hasPassword = false;
  10. var commands = data.toString().split('\n').join(' && ');
  11. var ssh = spawn('ssh', ['-l' + username, host, commands]);
  12.  
  13. ssh.on('exit', function (code, signal) {
  14. process.exit();
  15. });
  16.  
  17. ssh.stdout.on('data', function (out) {
  18. process.stdout.write(out);
  19. if (!hasPassword) {
  20. var stdin = process.openStdin();
  21. stdin.on('data', function (chunk) {
  22. ssh.stdin.write(chunk);
  23. });
  24. }
  25.  
  26. hasPassword = true;
  27. });
  28.  
  29. ssh.stderr.on('data', function (err) {
  30. process.stdout.write(err);
  31. });
  32. });
  33. };
  34.  
  35. var args = process.argv.slice(2);
  36. sys.puts('Running commands from ' + args[1] + ' as root@' + args[0]);
  37. ssh('root', args[0], args[1]);
Add Comment
Please, Sign In to add comment