相关疑难解决方法(0)

cat line X 到 line Y 在一个大文件上

说我有一个巨大的文本文件(> 2GB),我只是想catXY(如57890000至57890010)。

据我所知,我可以通过管道head输入tail或反之亦然来做到这一点,即

head -A /path/to/file | tail -B
Run Code Online (Sandbox Code Playgroud)

或者

tail -C /path/to/file | head -D
Run Code Online (Sandbox Code Playgroud)

其中ABCD可以根据文件中的行数计算得出,XY

但是这种方法有两个问题:

  1. 你必须计算ABCD
  2. 这些命令可以pipe相互发送比我感兴趣的多得多的行(例如,如果我只读取大文件中间的几行)

有没有办法让 shell 只使用并输出我想要的行?(同时仅提供XY)?

large-files tail cat head

171
推荐指数
5
解决办法
32万
查看次数

tail 是否读取整个文件?

如果我想要tail一个 25 GB 的文本文件,该tail命令会读取整个文件吗?

由于文件可能分散在磁盘上,我想它必须如此,但我不太了解这种内部结构。

tail

115
推荐指数
3
解决办法
1万
查看次数

标签 统计

tail ×2

cat ×1

head ×1

large-files ×1