145 votes

Comment supprimer plusieurs lignes dans vi ?

J'ai essayé de suivre ce qui suit :

Comment supprimer le texte sélectionné dans l'éditeur VI

mais

5dd

donne

E492 : Pas une commande d'éditeur : 5dd

J'ai alors essayé :

5d

Qui ne supprime qu'une seule ligne. Comment puis-je supprimer plusieurs lignes ?

9voto

Lon Points 91

D5d "coupe" cinq lignes

En général, je mets le numéro au milieu, comme ça :

d7l = supprimer 7 lettres

7voto

Brian S. Wilson Points 471

Appuyez sur le bouton Esc pour vous assurer que vous n'êtes pas en mode édition. Placez le curseur sur la première ligne à supprimer. Saisissez :5dd . La ligne actuelle et les quatre lignes suivantes doivent être supprimées.

Alternativement, si vous avez activé la numérotation des lignes...

Appuyez sur le bouton Esc pour vous assurer que vous n'êtes pas en mode édition. Entrez :#,#d où '#' représente les numéros de début et de fin de ligne à supprimer.

5voto

JSON C11 Points 3146
  1. Esc pour quitter le mode d'insertion
  2. :1enter aller à la ligne 1 (remplacer '1' par la ligne qui vous intéresse)
  3. 5dd supprimer 5 lignes (à partir de la ligne courante)

Type :set number (pour les lignes numérotées).

3voto

Evan Carroll Points 13420

Si vous voulez supprimer une plage APRÈS un déclencheur de ligne spécifique, vous pouvez utiliser quelque chose comme ceci

:g/^TMPDIR/ :.,+11d

qui supprime 11 lignes (incluses) après chaque rencontre de ^TMPDIR .

0voto

chris Points 9

C'est dxd, pas ddx

si vous voulez supprimer 5 lignes, placez le curseur au début de la première ligne à supprimer et d5d

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