2016-05-13 15 views
0

以下は、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' 

は、私は次のエラーを取得する:

'..' is not recognized as an internal or external command, operable program or batch file.

私が参照できますどのようにこのファイルは比較的ですか?

+0

「cmd/C」../../../ Config/BuildScripts/buildassets.bat "。エグゼクティブなので、100%ではありません。 –

+0

return exec(cmd/C "../../../Config/BuildScripts/buildassets.bat"、 関数(エラー、stdout、stderr){ console.log(stdout); console.log(stderr); } ); それは私にとってはうまくいかなかった。 – Tim

答えて

0

私はこの目的のためにこれをやっていますが、私の主なプロセスでは、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); 
}); 
関連する問題