如何使用节点js

时间:2017-10-09 01:43:16

标签: node.js windows batch-file

我尝试过:使用Node JS Child Process API在我的项目文件夹中生成bat文件。但我无法让它运转。

 projectfolder/
 ├──src/                       
 |   ├──app                 
 |        ├──home  
 |             ├──home.component.ts 
 |── my.bat (File Type: Bat shortcut)     

home.component.ts

    let spawn = require('child_process').spawn,
      ls = spawn('cmd.exe', ['/c', 'my.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);
    });

错误

  

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

     

home.component.ts?71c4:159子进程退出,代码为1

我也试过

const exec = require('child_process').execFile;
    exec('my.bat', function (err, data) {
      console.log(err);
      console.log(data);
    });

有错误

  

错误:生成my.bat ENOENT       at exports._errnoException(util.js:1050)       在Process.ChildProcess._handle.onexit(internal / child_process.js:193)       at onErrorNT(internal / child_process.js:367)       at _combinedTickCallback(internal / process / next_tick.js:80)       at process._tickCallback(internal / process / next_tick.js:104)

1 个答案:

答案 0 :(得分:0)

更新:我发现了这个问题。

我的文件类型是Bat shortcut

以上代码仅适用于Windows Batch File,但不适用于shortcut