Node.js 将计算文件的输出放入Nodejs中的另一个文件中

Node.js 将计算文件的输出放入Nodejs中的另一个文件中,node.js,stream,Node.js,Stream,在我的Nodejs脚本中有一行,叫做随需应变: eval(fs.readFileSync('eval.js')+''); 这样做是因为有时我想知道我的“nodejs脚本”中发生了什么,它的变量的内容 因此,“eval.js”通常表示为: console.dir(myVar); 问题是,它在控制台输出中输出。“Parent”脚本也会在控制台中输出一些信息,所以控制台运行得非常快,我无法得到我想要的信息 我正在寻找任何方法将文件“eval.js”的所有输出放入另一个文件“x.log” 类似于(在

在我的Nodejs脚本中有一行,叫做随需应变:

eval(fs.readFileSync('eval.js')+'');
这样做是因为有时我想知道我的“nodejs脚本”中发生了什么,它的变量的内容

因此,“eval.js”通常表示为:

console.dir(myVar);
问题是,它在控制台输出中输出。“Parent”脚本也会在控制台中输出一些信息,所以控制台运行得非常快,我无法得到我想要的信息

我正在寻找任何方法将文件“eval.js”的所有输出放入另一个文件“x.log”

类似于(在“父”脚本中):

或“eval.js”:


谢谢你的帮助

您可以写入另一个流(如文件或),以分离输出,但我强烈建议不要同步读取程序中的任何文件

另一种在应用程序中获取视图的方法是,利用它,您可以在程序中拥有一个shell,而不是充斥输出

var repl = require('repl');
var bar = new MyApp();
relp.start({
  foo: bar
});
现在,您的shell中暴露了
bar

// something what will forward stdout to "x.log"
console.dir(abc);
// blah blah blah
// something that will restore stdout to it's normal behaviour, like it was before.
var repl = require('repl');
var bar = new MyApp();
relp.start({
  foo: bar
});