代码: var exec = = require('child_process').exec;
exec('aa.bat',function(error,stdout,stderr){
if (error !== null) {
console.log('exec error: ' + error);
}
}
我用这个执行批处理文件,报错:exec error: Error: Command failed: execvp(): No such file or directory
如果我想执行上一目录里的bb.bat 是不是这样
exec('../bb.bat',function(error,stdout,stderr){
}
回复 (8)
T
可能要用绝对路径吧
T
应该是cmd aa.bat吧
T
child_process.exec只执行命令不是文件,bat文件可不是命令,虽然里面的内容是
Z
引用 tank00应该是cmd aa.bat吧
tankoo 能否再说的详细点,我试了下不行
exec('cmd aa.bat',function(error,stdout,stderr)
exec( ' '+cmd+'aa.bat',function(error,stdout,stderr)
这两种都行不行
T
引用 tank00应该是cmd aa.bat吧
@zhengpan 你查一下cmd命令的参数,应该是/a 或者/u的参数吧
Z
引用 tank00应该是cmd aa.bat吧
@tank00 恩 多谢tank00 找到原因了 我的node版本太旧 还是0.2.4 用0.6.17就好了 呵呵
D
引用 tank00应该是cmd aa.bat吧
@zhengpan @tank00 @timesking 可以直接执行代码如下:
var exec = require('child_process').exec;
exec('test.bat', function(error, stdout, stderr){
if ( !error ) {
console.log(stdout);
} else {
console.log(error);
}
});
D
引用 tank00应该是cmd aa.bat吧
@zhengpan test.bat的代码内容如下:
echo "hello world";
参与回复
登录后即可参与回复。登录