【问题标题】:Executing a Batch Script Server Side Meteor执行批处理脚本服务器端 Meteor
【发布时间】:2016-09-04 21:06:30
【问题描述】:

我正在尝试运行我的流星项目目录中 /public/run.bat 中保存的脚本。

在 /server/main.js 中:

'callExe': function() {
var spawn = require('child_process').spawn,
ls    = spawn('cmd.exe', ['/c', 'run.bat']);

ls.stdout.on('data', function (data) {
console.log('stdout: ' + data);
});

ls.stderr.on('data', function (data) {
console.log('stderr: ' + data);
});

ls.on('exit', function (code) {
console.log('child process exited with code ' + code);
});
}

这是我得到的错误,

I20160510-00:02:09.762(-4)? stderr: 'run.bat' is not recognized as an     
internal or external command,
I20160510-00:02:09.766(-4)? operable program or batch file.
I20160510-00:02:09.766(-4)?
I20160510-00:02:09.794(-4)? child process exited with code 1

虽然当我将它放在 .meteor\local\build\programs\server 中时它会运行。 有人可以帮我解决这个问题吗?

【问题讨论】:

    标签: javascript meteor server


    【解决方案1】:

    找出 run.bat 文件的完整路径并使用它。例如,如果 run.bat 在c:\meteor\local\build\programs\public

    ls = spawn('cmd.exe', ['/c', 'c:\meteor\local\build\programs\public\run.bat']);
    

    【讨论】:

      最近更新 更多