2008-11-24 9 views
13

Dites que j'ai un fichier avec n'importe quel nombre de lignes, disons, 125. Je veux obtenir toutes les lignes sauf la première n, disons, 20. Donc, je veux les lignes 21-125.Unix shell: comment obtenir les dernières lignes d'un fichier sauf les 20 premiers?

Y a-t-il un moyen de le faire avec tail/head ou un autre outil?

+4

Si vous voulez savoir ce que la tête/queue peut faire, lisez les pages man pour eux. Si vous ne saviez pas que la tête/queue existait, je pourrais comprendre pourquoi vous poseriez la question, mais demander explicitement à propos de la tête/queue mérite une réponse RTFM. – camh

+0

Lié: http://stackoverflow.com/questions/604864/print-a-file-skipping-x-lines-in-bash –

Répondre

33

Essayez

tail -n +21 myfile.txt 
+0

border border :) Devrait être +21 pour les lignes à partir de 21 ... –

3

pouvoir Awk peut être utilisé aussi:

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

Je suis rouillé avec cela, mais quelque chose comme: tail -n +20 nom de fichier

5

Essayez

sed -i 1,20d filename

si vous voulez supprimer les 20 premières lignes!

Questions connexes