如何使用ssh-exec从nodejs文件传递参数到远程脚本?

时间:2018-03-14 22:06:12

标签: node.js bash ssh

您好我想从nodejs文件在远程机器上执行bash脚本。我正在使用ssh-exec函数。这允许我轻松地运行远程脚本,但是当我需要传递一些参数时,会出现真正的问题,因为当前语法将参数作为字符串而不是它们的值传递。

var express=require('express');
var app=express();
var exec=require('ssh-exec');
var arg1="abc";
var arg2="def";
var arg3="ghd";
exec('"./test.sh" arg1 arg2 arg3' ,
  {user:'ubuntu',host:'a.b.c.d'}, function(err, stdout) {
    if(err){
      throw err;
    }
  console.log(stdout);
 console.log('success');
});    `

1 个答案:

答案 0 :(得分:0)

您必须将变量连接到命令的字符串中;否则你只是将变量的名称添加到命令中。见下文:

MailApp.sendEmail({
     to: 'example@yahoo.com',
     name: 'Jane Doe',
     replyTo: 'example@google.com',
     subject: 'Test',
     body: 'Testing'
});