Unix cat 从行开始

von*_*gen 51 command-line cat

从特定行(如 70000 之类的大数字)开始的文件输出的最佳方式是什么。就像是:

cat --line=70000 <file>
Run Code Online (Sandbox Code Playgroud)

Sve*_*end 71

看一下 tail ,更准确地说,它是 --lines=+N 开关:

tail --lines=+100 <file>
Run Code Online (Sandbox Code Playgroud)

  • 请注意,这不适用于 Mountain Lion(达尔文内核版本 13.1.0)。山狮的变体是“tail -n” (4认同)

Chr*_*sen 23

最明显的方法是tail。根据您使用的操作系统,语法可能略有不同:

tail -n +70000
Run Code Online (Sandbox Code Playgroud)

如果您无法开始tail工作,可以使用sed,但最终可能会变慢:

sed -pe '1,69999d'
Run Code Online (Sandbox Code Playgroud)


Jo *_*erd 5

您可以在awk命令中使用NR参数:

cat <file> | awk '{if (NR>=7000) print}'
Run Code Online (Sandbox Code Playgroud)

  • 您可以将此命令与其他限制一起使用。作为示例:`猫消息 | awk '{if (NR&gt;=7000 &amp;&amp; NR &lt;7003) print}'` 仅显示第 7000、7001 和 7002 行。 (2认同)