我写过的一个程序需要合并许多文件进入一,每 3 秒。
合并后的文件可以大于1GB。
我正在使用cat
命令来执行此操作。
Cat
似乎在合并大文件时也运行得相当快,但我不知道它内部是如何工作的。
我担心cat
在程序运行时命令的迭代是否会严重减慢硬盘速度。
答案1
我不确定您所说的影响硬盘性能或 cat 的内部工作是什么意思,但这里的事情是您正在执行非常耗费 I/O 的操作:从磁盘读取(“许多文件”)并写入磁盘(“一个”文件)。
再加上您经常这样做,您在硬盘上做了很多工作。如果您连续不断地在一个硬盘上这样做,就会影响性能。并不是因为本身cat
,我相信cat
这不是一个特别的问题,而是因为您的功能的内在 I/O 效应。
如果您持续读取和写入磁盘(尤其是同一个磁盘),则所有其他想要读取或写入的程序的性能都会受到明显影响。影响程度取决于系统速度、读取/写入过程中是否存在中断、您使用了多少个磁盘等。
所以是的,可以,但与所有性能问题一样:你真的应该测试一下是否如此。这是唯一有效的指标。