node.js - 使用 Node.js 将标准输出重定向到截断的文件
问题描述
我正在尝试使用 Node.js 编写实用程序脚本,并且必须将命令的标准输出保存到文件中。有没有一种简单的方法来做类似command arg1 arg2 > output.txt
Node 的事情?
我正在调用模块的命令spawn()
,child_process
例如var command = spawn("command", [arg1, arg2])
,但似乎没有办法将标准输出重定向到文件。
谢谢!
解决方案
据我所知,您必须通过附加事件处理程序来手动附加到文件,如此处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)
推荐阅读
- java - Java Hibernate 写入查询以对列表中的值求和
- c - 滚动条滑块行为
- android - 我的应用程序第一次运行,然后每次我尝试重新打开时都会崩溃
- c# - c# Word-AddIn 将 activeDocument 转换为虚拟 PDF 并将它们合并为一个 PDF 文档
- android - Firebase 中的控制按钮可见性
- c# - 在 Visual Studio 中使用组合自动替换继承
- android - 资源文件中的布局问题
- sql - 按值链接父子
- flask - Flask 对 API 的安全性,后端没有 db
- python - 如何在 Makefile 中获取 AWS 机密