我正在尝试将我的 console.log 的结果打印到另一个 .txt 文件,我将如何做到这一点?这就是我的 console.log 的样子:https ://imgur.com/o2Vo471
我希望将此作为常规文本打印到输出文件中,例如“output.txt”
我正在尝试将我的 console.log 的结果打印到另一个 .txt 文件,我将如何做到这一点?这就是我的 console.log 的样子:https ://imgur.com/o2Vo471
我希望将此作为常规文本打印到输出文件中,例如“output.txt”
您可以将程序重写为节点应用程序,然后从终端窗口运行它吗?然后,您无需为将控制台输出写入文件这一问题而苦苦挣扎……您可以改用 node 的 fs(Node.js 将一行写入 .txt 文件)
我建议使用Winston来实现这一点。您可以将Winston Transports设置为在文件中输出winston.add(winston.transports.File, options)
或者,如果您不想将任何 npm 模块添加到您的应用程序中,您可以这样做
var fs = require('fs');
module.exports = function(text) {
fs.appendFile('output.txt', text + '\n', function (err) {
if (err) throw err;
});
};
并将其保存到项目目录中的文件中,例如 NameOfYourFile.js。
然后你可以在你想要输出的文件中要求它
var loger = require('./NameOfYourFile');
loger('Logs');
loger('Output');
loger('Working');
并且只需使用记录器而不是 console.log。您也可以轻松地重命名它。
打字稿版本
一、安装节点模块
npm install @types/node --save-dev
然后为您的模块创建一个文件,例如 NameOfYourFile.ts
import * as fs from 'fs';
export default function(text) {
fs.appendFile('output.txt', text + '\n', function (err) {
if (err) throw err;
});
};
然后你可以像这样导入它
import loger from './NameOfYourFile';
loger('Logs');
loger('Output');
loger('Working');
这个答案有效,但这不是我的目标,它适用于我认为的大多数其他人。你会想像这样运行你的程序:
npm start > output.txt
这会将您的控制台输出打印到 output.txt 文件中我仍然需要使用 node fs 来实现这一点,所以我将不胜感激