Réponses:
Jetez un coup d'œil à tail, plus précisément, c'est --lines = + N switch:
tail --lines=+100 <file>
tail -n
Le moyen le plus évident est tail
. La syntaxe peut être légèrement différente selon le système d'exploitation que vous utilisez:
tail -n +70000
Si vous ne pouvez pas vous rendre tail
au travail, vous pouvez utiliser sed
, mais cela risque de ralentir:
sed -pe '1,69999d'
tail
fonctionnait parfaitement dans MinGW (sur un fichier texte de 600 Mo). Le temps d'exécution n'était que de quelques secondes (mais le fichier d'entrée aurait déjà été dans le cache de fichiers).
Si, au lieu d’un numéro de ligne, vous devez commencer à répertorier la ligne contenant une donnée $phrase
, essayez ce qui suit.
more -1000 +/"$phrase" yourfilename | sed '1,4d'
Le -1000 listera en permanence le texte sur 1000 lignes maximum; vous pouvez changer cela au besoin. La sed
commande coupera les 4 premières lignes de la sortie, qui ont été automatiquement insérées par more
, contenant une ligne vide, le message "... sautant" et les deux lignes précédant votre ligne de départ. Je suppose que cela peut varier en fonction de votre système.
Vous pouvez utiliser le paramètre NR avec la commande awk :
cat <file> | awk '{if (NR>=7000) print}'
cat messages | awk '{if (NR>=7000 && NR <7003) print}'
affiche uniquement les lignes 7000, 7001 et 7002.
queue +250
tail
suggestion est la même que celle acceptée et d’autres réponses d’il ya des semaines. pourquoi prendre la peine de poster?
...can't find the server at www.scripterworld.com.
wc -l $1 | awk '{print $1}'
; linéno =expr $lineno - $2
; tail -n $ lineno $ 1; }