将'cat'输出到Node.js中的aa文件

Mik*_*shi 1 cat node.js

我正在尝试使用Node.js做一些简单的事情(在更大的上下文中).基本上这样做:

cat file1.avi file2.avi file3.avi > final_file.avi
Run Code Online (Sandbox Code Playgroud)

我试过这个:

var spawn = require("child_process").spawn,
    cat = spawn("cat", ["file1.avi","file2.avi", "file3.avi", ">", "final_file.avi"]);

cat.stdout.on("data", function(data) {
    console.log(data);
});

cat.stderr.on("data", function(data) {
    console.log(data);
});
Run Code Online (Sandbox Code Playgroud)

但它不起作用,只是将'cat'输出到stdout而不输入'final_file'.[编辑]重要的是要注意它们是AVI文件

有关如何使其工作的任何想法?

DHa*_*ick 6

>重定向符号是你的shell的功能,而不是操作系统或cat.当您cat使用>作为参数调用时,它将作为参数传递如果要保存这些文件的内容,请在on("data")函数内部执行

var spawn = require('child_process').spawn;

cat = spawn('cat',["file1.avi", "file2.avi"]);    
cat.stdout.on("data", function (data) {
    console.log(data); 
});
Run Code Online (Sandbox Code Playgroud)