使用Node.js将stdout重定向到截断的文件



我正试图用Node.js编写一个实用程序脚本,并且必须将命令的stdout保存到一个文件中。有没有一种简单的方法可以用Node执行类似command arg1 arg2 > output.txt的操作?

我使用child_process模块的spawn()调用该命令,就像var command = spawn("command", [arg1, arg2])一样,但似乎没有办法将stdout重定向到文件。

谢谢!

据我所知,您必须通过将事件处理程序附加到stdout来手动附加到文件中,如所示

它看起来有点像

const { spawn } = require('child_process')
const fs = require('fs')
const cmd = spawn(...)
const appendToLog = data => fs.appendFileSync('my-log.log', `${data}n`)
cmd.stdout.on('data', appendToLog)

最新更新