113 votes

Comment afficher certaines lignes d'un fichier texte sous Linux ?

Je suppose que tout le monde connaît les utilitaires utiles de la ligne de commande de Linux. head y tail . head permet d'imprimer les X premières lignes d'un fichier, tail fait la même chose mais imprime la fin du fichier. Quelle est une bonne commande pour imprimer le milieu d'un fichier ? quelque chose comme middle --start 10000000 --count 20 (imprimer les 10'000'000ème à 10'000'010ème lignes).

Je cherche quelque chose qui puisse traiter efficacement les gros fichiers. J'ai essayé tail -n 10000000 | head 10 et c'est horriblement lent.

-1voto

jfc Points 1

Pour répondre à la question de @sean87 :

cat -n file.txt | grep '^ *1' rendement toutes les lignes qui ont 1 sur leur côté droit. Comment produire la ligne 1 avec cette technique ?

Il suffit d'ajouter \s après le numéro, comme ceci :

cat -n file.txt | grep '^ *1\s'

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X