supprimer la ligne dans vi

170

Comment puis-je supprimer une ligne dans VI?

Voici ce que je fais en ce moment:

  1. Ouvrez le terminal alt+ ctrl+t
  2. vi a.txt
  3. Je déplace le curseur sur la ligne que je souhaite supprimer, puis quelle combinaison de touches doit-on utiliser pour supprimer une ligne dans l'éditeur vi ?
IM-JM
la source
5
Je vous suggère de lire washington.edu/computing/unix/vi.html, il vous donne un aperçu de l’utilisation de base. Voici une feuille de triche: tuxfiles.org/linuxhelp/vimcheat.html C'est toujours une bonne idée de jeter un coup d'œil à de telles pages avant de poser des questions triviales ...
polemon
2
il y a aussi S pour supprimer une ligne et entrer insert
Ben Creasy,

Réponses:

291

Un appui sur ddenlèvera cette ligne (en fait, il la coupera). Donc, vous pouvez le coller via p.

Gert
la source
22

Comme d'autres l'ont dit, c'est ddsi vous êtes en mode normal (appuyez sur ESC) pour vous assurer que vous êtes en mode normal, mais vous le serez par défaut. Vous avez peut-être constaté que vi n'agissait pas comme le voudrait un éditeur. C'est assez unique, et ces fonctionnalités uniques le rendent extrêmement puissant et rapide à utiliser. Si vous souhaitez en savoir plus, vous pouvez exécuter vimtutorla commande en ligne et vous obtiendrez un didacticiel rapide ( pouvant durer une heure de lecture / expérience) sur les bases de son utilisation.

Maintenant, vous pouvez utiliser un éditeur avec une interface plus familière. La plupart des systèmes ont nano. Vous pouvez taper nano a.txtpour ouvrir votre fichier dans nano. Vous pouvez même aller plus loin - il n'y a aucune raison pour que vous utilisiez un éditeur basé sur un terminal. Puisque vous avez mentionné l'utilisation de ( Ctrl+ Alt++ T) et qu'il s'agit du raccourci par défaut dans Ubuntu et d'autres distributions de Gnome, je serais surpris que vous ne l'ayez pas geditinstallée. En ligne de commande, essayez gedit a.txtet vous obtiendrez un éditeur graphique.

Shawn J. Goff
la source
Quelques personnes en ont besoin. Si vous modifiez régulièrement des fichiers texte, cela vaut la peine d'apprendre vim. Si vous ne le faites pas et que vous essayez simplement de suivre certaines instructions pour que quelque chose fonctionne, cela ne vaut probablement pas la peine, sauf si vous souhaitez simplement essayer un logiciel différent et apprendre de nouvelles choses.
Shawn J. Goff
J'ai viré vimtutor en ligne de commande, et cela a ouvert un vim, avec un temp. fichier. Ai-je commis une erreur?
IM-JM
@ im-jm Je ne pense pas que vous ayez commis une erreur, mais votre système pourrait avoir une configuration inhabituelle. Il devrait ouvrir un document qui commence par "Bienvenue dans le tuteur VIM". Si cela vous intéresse, vous devriez poser une autre question.
Shawn J. Goff
12

Pour supprimer la ligne sous le curseur, utilisez dd.

La commande delete accepte tous les modificateurs de position normaux. Ainsi, si vous êtes au début de la ligne en dessous de celle que vous souhaitez supprimer, vous pouvez simplement dkpasser en mode suppression et vous déplacer d'une ligne vers le haut, en supprimant tout ce que le curseur a transmis.

Vous pouvez également spécifier une répétition. Ainsi 5dd, la ligne sous le curseur sera supprimée cinq fois, supprimant ainsi les quatre lignes en cours et les suivantes.

Caleb
la source
8
Ou d5d. Je ne sais pas pourquoi, mais je préfère ça. (Fait amusant: NdMdsupprime N lignes × M )
Random832
7

Esc dd après avoir accédé à la ligne que vous souhaitez supprimer

Anoop
la source
2
L'échappement n'est pas nécessaire si vous pouvez aller à la ligne que vous voulez supprimer.
Anthon
3
Echap est nécessaire si vous utilisez les touches fléchées en mode insertion pour accéder à la ligne droite.
Alexander
1

En mode visuel,

shift + v, choisissez les lignes, puis d

ctrl + v, choisissez les colonnes, puis d

Ben
la source