2008-11-24 5 views
13

Sagen wir, ich habe eine Datei mit einer beliebigen Anzahl von Zeilen, sagen wir 125. Ich möchte alle Zeilen mit Ausnahme der ersten n, sagen wir 20. Also, ich möchte Zeilen 21-125.Unix-Shell: Wie bekomme ich die letzten Zeilen einer Datei außer den ersten 20?

Gibt es eine Möglichkeit, dies mit tail/head oder ein anderes Werkzeug zu tun?

+4

Wenn Sie wissen möchten, was head/tail kann, lesen Sie die man-Seiten für sie. Wenn Sie nicht wüssten, dass Head/Tail existiert, könnte ich verstehen, warum Sie die Frage stellen, aber eine explizite Frage nach Kopf/Schwanz verdient eine RTFM-Antwort. – camh

+0

Verknüpft: http://stackoverflow.com/questions/604864/print-a-file-skipping-x-lines-in-bash –

Antwort

33

Versuchen

tail -n +21 myfile.txt 
+0

border case :) Sollte +21 für Zeilen ab 21 sein ... –

3

Awk Leistung kann auch verwendet werden:

awk -- 'NR > 20' /etc/passwd 
3

Ich bin rostig mit diesem aber so etwas wie: tail -n 20 Dateiname

5

Versuchen

sed -i 1,20d filename

Wenn Sie die ersten 20 Zeilen löschen möchten!

Verwandte Themen