相对路径在child_process / node中不起作用

时间:2016-05-13 07:05:06

标签: node.js gulp

下面是我在Gulp任务中用来运行bat文件的当前代码。这条路是绝对的。

var gulp = require('gulp');
var exec = require('child_process').exec;

module.exports = function() {

    // Merges the CSS and JS files

    return exec("C:/git/xxxx/Config/BuildScripts/buildassets.bat",
        function (err, stdout, stderr) {
            console.log(stdout);
            console.log(stderr);
        }
    );

};

我希望将其作为相对路径,但是当我将其更改为相对路径时,

return exec('../../../Config/BuildScripts/buildassets.bat'

我收到以下错误:

  

'..'未被识别为内部或外部命令,   可操作程序或批处理文件。

如何相对引用此文件?

2 个答案:

答案 0 :(得分:2)

我是为了这个目的而这样做,但是在我的主要过程中没有gulp文件。

const app = electron.app;
const exec = require('child_process').exec;

var path = app.getAppPath();
exec(`"${path}\\path\\toexe.exe"`, function (err, stdout, stderr) {
   console.log(stdout);
   console.log(stderr);
});

答案 1 :(得分:0)

使用/代替使用\\

return exec('..\\..\\..\\Config\\BuildScripts\\buildassets.bat', function() {
  ...
})