如何读取 51gb 的日志文件?

如何读取 51gb 的日志文件?

好吧,似乎出了什么大问题,现在我确实有一个大于 51gb 的日志文件。
是否有任何 (linux) 工具可以读取/打开这种大小的文件?

我想读取日志文件。

答案1

less可以很好地读取大型文件。它可能会尝试计算行数,在这种情况下,它会告诉您按Ctrl-C停止计算行数。

答案2

并不真地。

您可以在 StackOverflow 上找到许多针对您的确切问题的答案(除了文件较小,为 2GB),这里。正如您所看到的,没有什么是真正令人满意的。而对于您来说,情况变得更加严重,因为文件永远无法装入 RAM,因此随机访问非常麻烦。

不过,让我提出一个替代方案。如果你也是这样,我会把文件分成几个小块,然后分别编辑,然后再重新组合,就像这样:

 split -b 5M the_original_file
 cat xa* > the_reassembled_file. 

从手册页中:

SPLIT(1) 用户命令 SPLIT(1)

 NAME
   split - split a file into pieces

 SYNOPSIS
   split [OPTION]... [INPUT [PREFIX]]

 DESCRIPTION
   Output  fixed-size  pieces of INPUT to PREFIXaa, PREFIXab, ...; default size is 1000 lines, and default
   PREFIX is 'x'.  With no INPUT, or when INPUT is -, read standard input.

   Mandatory arguments to long options are mandatory for short options too.

   -a, --suffix-length=N
          generate suffixes of length N (default 2)

   --additional-suffix=SUFFIX
          append an additional SUFFIX to file names.

   -b, --bytes=SIZE
          put SIZE bytes per output file

相关内容