【发布时间】:2017-08-12 06:39:39
【问题描述】:
注意:有各种类似的问题,但它们不适用于 nodejs。请不要将此问题标记为重复,除非它与标记为 nodejs 的问题重复。
注意:this question 没有回答我的问题,它解释了如何从文件中删除 x 行,而不是从文件中保留 x 行。该问题没有解释如何获取文件的行长并使用它来修剪一些行。我回答了这个问题,因为我找到了答案。这个答案应该可以解决问题。
在我的应用程序中,日志文件在正常使用期间写入了多行日志。为了节省磁盘空间,我想在日志文件的长度超过设定数量时删除它的第一行。
例如,如果最大行长度为 5(只是举例,并不是我真正想要的),那么:
Line 1
Line 2
Line 3
Line 4
Line 5
Line 6
将转换为:
Line 2
Line 3
Line 4
Line 5
Line 6
和
Line 1
Line 2
Line 3
Line 4
Line 5
Line 6
Line 7
将转换为:
Line 3
Line 4
Line 5
Line 6
Line 7
注意:这个问题被标记为nodejs,所以我想在没有任何库/依赖项的nodejs中得到答案(原生fs很好)
【问题讨论】:
-
只要在 npm 上有 'log-rotate' 和 'logrotate-stream' 模块,就不需要重新发明轮子。如果需要,我可以提供一个使用示例。
-
编辑解释它如何不是一个副本。
标签: nodejs nodejs node.js file logging