Formation PUB110 : Linux, 2018 Travailler avec les fichiers

4.2 Éditeur vim


vim, le successeur de vi, est un éditeur très ancien et très peu convivial mais très puissant. Tout utilisateur Linux doit en avoir une connaissance de base car il est profondément ancré dans le monde Linux. Il est encore, de nos jours, utilisé par la plupart des administrateurs de systèmes Linux.

Pour lancer cet éditeur, entrez la commande vim suivie du nom du fichier. Si aucun fichier ne correspond au nom demandé, un fichier vierge sera créé lorsque le travail sera enregistré.

Ex :

Commande Linux

vim nom_fichier

▼Publicité Le texte se poursuit plus bas

Mode commande vs mode insertion

vim fonctionne en deux modes :

  • En mode d'insertion (ou d'entrée) : pour entrer du texte
  • En mode commande : pour utiliser une commande dans le tableau qui suit

À son ouverture, vim vous place en mode commande. Pour passer d'un mode à l'autre :

  • en mode commande : la lettre i ou la touche INSERT vous place en mode insertion
  • en mode d'insertion : ESCAPE vous place en mode commande

Principales commandes

Voici quelques commandes utiles. Pour entrer ces commandes, vous devez d'abord vous placer en mode commande.

Commande Rôle
i (ou touche INSERT) Passe en mode d'insertion
:w Write : Sauvegarde les changements
:w nom Sauvegarde en spécifiant le nom du fichier
:wq Write and Quit : Sauvegarde et sort
:q! Quit : Sort sans conserver les changements.

! = Aucun message d'avertissement

:q Sort directement, si aucun changement n'a été effectué
:n ou nG Se place sur la ligne n

Ex : :5 -> va à la ligne 5

:set number Affiche les numéros de lignes
:set nonu Enlève l'affichage des numéros de lignes
:debut,fin s/chaîne_ori/chaine_modif/g

ou

:debut,fin s/chaîne_ori/chaine_modif/c

Remplace le texte globalement ou avec demande de confirmation

Aucun espace dans toute la commande

Utiliser le signe $ pour représenter la dernière ligne du fichier

Le s signifie Substitute

Le g signifie Globalement

Le c signifie Confirmation

Ex: :1,$s/allo/salut/g -> remplace tous les allo par des salut

:!commande Lance une commande au shell

Ex : :!date -> affiche la date du jour

:!lp nom_fichier Imprime le fichier (il faut spécifier son nom puisqu'il s'agit d'une commande au shell)
Y Y majuscule : Yank : copie une ligne
Y3Y Copie 3 lignes
dd Coupe une ligne
d3d Coupe 3 lignes
dw DeleteWord : Coupe un mot
D ou d$ Coupe les caractères à partir du curseur jusqu'à la fin de la ligne
p P minuscule : Paste : coller à la suite de la ligne du curseur ce qui a été coupé ou copié
P P majuscule : Paste : coller avant la ligne du curseur ce qui a été coupé ou copié
u Undo
/ Pour effectuer une recherche dans le texte (comme dans man)

n pour rechercher occurrence suivante

N pour rechercher occurence précédente

:noh No Highlight : Enlève l'affichage inverse vidéo dû à la précédente recherche
F1 ou :help Aide (pour sortir de l'aide : :q)

L'aide obtenue par F1 sera différente de celle obtenue par :help

Ctrl+l Ctrl + L minuscule : Réaffiche l'écran (enlève les messages d'erreur)
Ctrl+[ Annule une commande partiellement formée
Ctrl+g Affiche nom du fichier et position du curseur (Ctrl+l pour enlever l'affichage)
. Répète la dernière opération
:flèche_haut Historique des commandes

Vous pouvez également copier un bloc de texte à l'aide des fonctionnalités standard du shell (prendre en bloc pour copier puis cliquer à l'aide du bouton du centre pour coller).

Pour plus de détails sur les commandes et le fonctionnement de vim :

Commande Linux

man vim

Veuillez noter que le contenu de cette fiche vous est partagé à titre gracieux, au meilleur de mes connaissances et sans aucune garantie.
Par Christiane Lagacé
Dernière révision le 11 septembre 2022
Merci de partager !

Site fièrement hébergé chez A2 Hosting.

Soumettre