我正在尝试使用 node.js 上的Javascript
运行.bat文件。
这是我到目前为止的代码:
function runBat(){
var exec = require('child_process').execSync;
var result = exec('C:\\Temp\\tasks\\acis\\runme.bat');
console.log('result: ' + result);
};
runBat();
当我将它存储在单独的脚本中时,此函数可以正常运行。
但是当我使用原始脚本(包含创建bat文件的代码)运行时,bat文件不会运行。
如何让它与其他代码一起运行?
我试图不使用任何回叫,因为它们往往会产生其他问题
抱歉,无法提及你们。我也试图不使用异步函数
答案 0 :(得分:0)
这应该有用吗??
var spawn = require('child_process').spawn,
ls = spawn('cmd.exe', ['/c', 'C:\\Temp\\tasks\\acis\\runme.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);
});
答案 1 :(得分:0)
找到解决方案。我所要做的就是在调用函数之前放一个延迟
setTimeout(runBat, 3000);
谢谢大家,感谢您的帮助