nodejs 执行shell 命令

时间:2021-07-28 13:39:19

有需要从前端操作服务器执行shell命令的需求

建立一个process.js文件

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
var process = require('child_process');
//直接调用命令
exports.createDir = function (){process.exec('D: && cd testweb && md mydir',
      function (error, stdout, stderr) {
        if (error !== null) {
          console.log('exec error: ' + error);
        }
    });
}
//调用执行文件
exports.openApp = function(){
    process.execFile('D:/testweb/aaa.bat',null,{cwd:'D:/'},
      function (error,stdout,stderr) {
        if (error !== null) {
          console.log('exec error: ' + error);
        }
    });
}

这里的命令是写死的,如果需要动态调用就把命令写成批处理文件(linux写shell脚本)

也可以使用process.exec('test.bat',...) 和 process.exec('sh test',...)执行文件