Du brauchst Schwanz. Einige Beispiele:
$ tail great-big-file.log
< Last 10 lines of great-big-file.log >
Wenn Sie wirklich eine bestimmte Anzahl von "ersten" Zeilen überspringen müssen, verwenden Sie
$ tail -n +<N+1> <filename>
< filename, excluding first N lines. >
Das heißt, wenn Sie N Zeilen überspringen möchten, beginnen Sie mit dem Drucken von Zeile N+1. Beispiel:
$ tail -n +11 /tmp/myfile
< /tmp/myfile, starting at line 11, or skipping the first 10 lines. >
Wenn Sie nur die letzten so vielen Zeilen sehen möchten, lassen Sie das „+“ weg:
$ tail -n <N> <filename>
< last N lines of file. >
Der einfachste Weg, den ich gefunden habe, um die ersten zehn Zeilen einer Datei zu entfernen:
$ sed 1,10d file.txt
Im allgemeinen Fall ist X
ist die Anzahl der zu löschenden Anfangszeilen, Anerkennung für Kommentatoren und Redakteure:
$ sed 1,Xd file.txt
Wenn Sie die ersten beiden Zeilen überspringen möchten:
tail -n +3 <filename>
Wenn Sie die erste x Zeile überspringen möchten:
tail -n +$((x+1)) <filename>
Wenn auf Ihrem System GNU-Tail verfügbar ist, können Sie Folgendes tun:
tail -n +1000001 huge-file.log
Es ist die +
Charakter, der tut, was du willst. Um aus der Manpage zu zitieren:
Wenn das erste Zeichen von K (die Anzahl der Bytes oder Zeilen) ein `+' ist, drucke beginnend mit dem K-ten Element vom Anfang jeder Datei.
Wie im Kommentar erwähnt, beginnt das Drucken mit +1000001 also mit dem ersten Element nach den ersten 1.000.000 Zeilen.