414 votes

Aller à un numéro de ligne spécifique en utilisant Less sous Unix

J'ai un fichier qui compte environ un million de lignes. Je dois aller à la ligne 320123 pour vérifier les données. Comment dois-je m'y prendre ?

1 votes

Et si on faisait ça avec more ? :-)

566voto

n1r3 Points 1757

Avec n étant le numéro de la ligne :

  • ng : Sauter à la ligne numéro n. La valeur par défaut est le début du fichier.
  • nG : Sauter à la ligne numéro n. La valeur par défaut est la fin du fichier.

Donc pour aller à la ligne numéro 320123, vous devez taper 320123g .

Copié-collé directement de Wikipedia .

8 votes

... et n'appuyez pas sur la touche entrée après g ou vous sauterez une ligne supplémentaire.

0 votes

Ni cette réponse ni les autres ne fonctionnent pour la version BusyBox de less : less 9581553g -N file.txt less: can't open '9581553g': No such file or directory et aussi : less +G -N file.txt less: can't open '+G': No such file or directory

1 votes

@Wimateeka vous devriez entrer ces commandes étant dans less pas dans le shell. D'abord vous ouvrez le fichier less file.txt puis entrez votre commande 9581553g

244voto

Ian Mackinnon Points 1993

Pour ouvrir à une ligne spécifique directement à partir de la ligne de commande, utilisez :

less +320123 filename

Si vous voulez voir les numéros de ligne aussi :

less +320123 -N filename

Vous pouvez également choisir d'afficher une ligne spécifique du fichier à une ligne spécifique du terminal, pour les cas où vous avez besoin de quelques lignes de contexte. Par exemple, ceci ouvrira le fichier avec la ligne 320123 sur la 10ème ligne du terminal :

less +320123 -j 10 filename

64voto

jaypal Points 34440

Vous pouvez utiliser sed pour cela aussi -

sed -n '320123'p filename 

Ceci imprimera le numéro de ligne 320123 .

Si vous voulez une gamme, vous pouvez le faire -

sed -n '320123,320150'p filename 

Si vous voulez aller d'une ligne particulière à la toute fin, alors -

sed -n '320123,$'p filename

44voto

runlevel0 Points 68

De moins en moins (sous Linux) :

 g and the line number to go forward

 G and the line number to go backwards

Utilisés seuls, g et G vous amènent respectivement à la première et à la dernière ligne d'un fichier ; utilisés avec un numéro, ils sont tous deux équivalents.

Un exemple : vous voulez aller à la ligne 320123 d'un fichier,

appuyez sur 'g' et après les deux points tapez le nombre 320123

De plus, vous pouvez taper '-N' dans less pour activer/désactiver les numéros de ligne. Vous pouvez en fait passer n'importe quel commutateur de ligne de commande depuis l'intérieur du programme, comme -j ou -N.

NOTE : Vous pouvez fournir le numéro de ligne dans la ligne de commande pour lancer less (less +number -N) ce qui sera beaucoup plus rapide que de le faire depuis l'intérieur du programme :

less +12345 -N /var/log/hugelogfile

Cela ouvrira un fichier affichant les numéros de ligne et commençant à la ligne 12345.

Source : homme 1 moins et aide intégrée dans moins (moins 418)

2 votes

Il est intéressant de noter que google a décidé de prendre des parties de votre réponse pour leur réponse affichée lors de la recherche : "moins aller à la ligne" (une bonne réponse imo)

4voto

djechlin Points 18051

Pour l'édition, cela est possible dans nano via +n à partir de la ligne de commande, par exemple,

nano +16 file.txt

Pour ouvrir file.txt à la ligne 16.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X