最有效的文件修改方法是什么?在同一个文件中添加多行,或者读入、处理和写出文件?

问题描述 投票:0回答:1

我有一个 perl 脚本,必须创建一个文件,向其中写入几百行内容,然后读取它写入的所有行,并在根据单独的配置文件找到匹配项时添加行。这并不像第一次就写出所有正确的东西那么理想,但我有一些不同的用例,需要在不同的场景中添加不同的行。

我的问题是:编写初始文件,然后读取该文件中的所有行并将其附加到几个不同的位置会更好吗?或者我应该写入初始文件,然后读取初始文件的行,并将它们写到一个新文件中,像我这样做一样添加新行?

我对我所学的操作系统课程中的文件管理如何发生有一个粗略的了解,并且根据我的理解,我认为重复移动文件偏移量可能会更昂贵,但我不确定这个成本是否会增加超过文件创建的成本。

我知道对于只有几百行的小文本文件来说,成本差异可能非常微不足道,但我更好奇什么更快。

我不确定相关的其他上下文是操作系统是 Linux,并且它是一个多用户系统,尽管对此文件的并发访问应该很少或不存在。该文件是由该脚本创建的,随后由单个用户读取,然后几乎被丢弃。

file perl append processing-efficiency
1个回答
0
投票

如果只有几百行,请将其保留在内存中。这也消除了并发问题,并且您的数据结构不会到达磁盘,除非您缺少 RAM 并开始交换。

© www.soinside.com 2019 - 2024. All rights reserved.