从文件中获取倒数第 n 行

Cur*_*der 3 linux ubuntu tail files

我有一个包含很多行的文件,我需要倒数第 n 行(特别是从底部算起的第 95 行)。我该如何继续这样做呢?一种方法是使用 tail,但它会打印从最后一个到最后 95 个的所有内容,而我只需要第 95 个。

ica*_*rus 5

正如您所指出的,您可以用来tail从文件中获取最后 95 行。您只需要其中的第一个,为此有一个名为 的实用程序head。所以

tail -95 file | head -1
Run Code Online (Sandbox Code Playgroud)

使用tail可能是你能做的最好的事情。

另一种方法是将行读入行数组,并在到达文件末尾时打印出 n-95 行。您实际上不需要存储所有行,因此您可以拥有一个包含 95 个元素的循环缓冲区来存储您读取的最后 95 行。