0

我有一个奇怪的观察。我有一个巨大的文本文件(它就像 450 MB 的文本)

我读了其中的行数..通过这样的方式。

 for i,line in enumerate(f):
    count += 1
 print count

在每次运行中,我得到不同的结果?它不像它非常不同。只是每次我运行它......它最接近最后一个。例如,如果在第一个示例中显示 8151,则在下一次运行中显示 8162,在下一次运行中应该显示 8197?有什么线索吗??有什么我忽略的。

4

1 回答 1

3

您可能有另一个进程,该进程对正在写入的文件具有打开的写句柄。您可以使用 . 检查哪些其他进程对该文件具有打开的文件句柄lsof

lsof | grep <name of file>
于 2012-04-17T20:32:04.143 回答