NodeJS - 生成函数

NodeJS - Spawn function

本文关键字:函数 NodeJS      更新时间:2023-09-26

我正在使用nodejs和子进程模块在我的平台上执行命令。为此,我使用生成函数。

这是我的代码:

var spawn_execution = executor.spawn(command, args);
spawn_execution.stdout.on('data', function (data) {
    console.log('stdout: ' + data);
});
spawn_execution.stderr.on('data', function (data) {
    console.log('stderr: ' + data);
});

没什么好看的。所以我尝试了几个命令,就像

executor.spawn('C:/path/to/ffmpeg.exe', [...]);

但是当我尝试使用本机窗口命令时,它不起作用。例如,我尝试过:

executor.spawn('del', ['C:''my''file''to''delete']);

执行此操作时,我遇到了一个 ENOENT 错误,这意味着找不到该文件。所以我做了另一件事:

executor.spawn('C:/my/script-delete.exe', ['C:''my''file''to''delete']);

此脚本删除.exe仅包含:

del %1

那么为什么 spawn 函数需要有一个脚本文件呢?为什么它不适用于本机窗口命令?您知道一种使其与本机命令一起使用的方法吗?

谢谢!

它不起作用,因为只有cmd.exe知道内部命令才能从executor.spawn中找到内部命令。

因此,它可以从批处理文件或当您使用类似的东西时

工作
executor.spawn('cmd.exe', ['/C', 'del', 'C:''my''file''to''delete']);