GNU/Linux >> Tutoriels Linux >  >> Linux

Guide du débutant pour l'éditeur vi (référence de la ligne de commande)

L'éditeur vi est un éditeur interactif en ligne de commande que vous pouvez utiliser pour créer et modifier des fichiers texte. L'éditeur vi est également le seul éditeur de texte que vous pouvez utiliser pour modifier certains fichiers système sans modifier les autorisations des fichiers. L'éditeur Vim est une version améliorée de l'éditeur vi.

Accéder à l'éditeur vi

Pour créer, modifier et afficher des fichiers dans l'éditeur vi, utilisez la commande vi. La commande vi inclut les trois syntaxes suivantes :

$ vi
$ vi filename
$ vi options filename

Si le système plante pendant que vous éditez un fichier, vous pouvez utiliser le -r possibilité de récupérer le fichier.

$ vi -r filename

Le fichier s'ouvre pour que vous puissiez le modifier. Vous pouvez ensuite enregistrer le fichier et quitter l'éditeur vi, en utilisant la commande suivante :

$ vi -R filename

Le fichier s'ouvre en mode lecture seule pour éviter l'écrasement accidentel du contenu du fichier.

Les modes de l'éditeur vi

L'éditeur vi propose trois modes de fonctionnement :
1. Mode commande – Le mode commande est le mode par défaut de l'éditeur vi. Dans ce mode, vous pouvez exécuter des commandes pour supprimer, modifier, copier et déplacer du texte. Vous pouvez également positionner le curseur, rechercher des chaînes de texte et quitter l'éditeur vi.

2. Mode de saisie – Vous pouvez insérer du texte dans un fichier en mode de saisie. L'éditeur vi interprète tout ce que vous saisissez en mode saisie comme du texte. Pour appeler le mode de saisie, appuyez sur l'une des touches minuscules suivantes :

  • je – Insère du texte avant le curseur
  • o – Ouvre une nouvelle ligne vide sous le curseur
  • un – Ajoute du texte après le curseur

Vous pouvez également invoquer le mode de saisie pour insérer du texte dans un fichier en appuyant sur l'une des touches majuscules suivantes :

  • Je – Insère du texte au début de la ligne
  • O – Ouvre une nouvelle ligne vierge au-dessus du curseur
  • Un – Ajoute du texte à la fin de la ligne

3. Mode dernière ligne – Vous pouvez utiliser les commandes d'édition avancées en mode dernière ligne. Pour accéder au mode dernière ligne, entrez deux points (:) en mode commande. La saisie du caractère deux-points (:) place le curseur sur la ligne inférieure de l'écran.

Remarque :Le dernier mode de ligne est en fait le mode ex. L'éditeur vi est essentiellement une extension visuelle de l'éditeur ex, qui à son tour est une version étendue de l'éditeur ed.

Basculer entre les modes

– Le mode par défaut de l'éditeur vi est le mode commande.
– Pour passer en mode saisie, appuyez sur i, o ou a.
– Pour revenir au mode commande, appuyez sur la touche Échap.
– En mode commande, vous pouvez enregistrer le fichier et quitter l'éditeur vi, et revenir à l'invite du shell.

Affichage des fichiers en mode lecture seule

La commande d'affichage vous permet d'afficher les fichiers en mode lecture seule.

$ view filename

La commande view invoque l'éditeur vi dans l'option lecture seule, ce qui signifie que vous ne pouvez pas enregistrer les modifications apportées au fichier. Par exemple, pour afficher le fichier data.txt en mode lecture seule, saisissez la commande suivante :

$ view data.txt

Le fichier data.txt apparaît. Entrez le :q commande pour quitter le fichier, quitter l'éditeur vi et revenir à l'invite du shell.

Déplacer le curseur dans l'éditeur vi

Le tableau montre les séquences de touches qui déplacent le curseur.

Séquence de touches Déplacement du curseur
h, flèche gauche ou retour arrière Un caractère à gauche
j ou flèche vers le bas Une ligne plus bas
k ou flèche vers le haut Une ligne vers le haut
l, flèche droite ou barre d'espace Droit (avant) un caractère
w Avancer d'un mot
b Reculez d'un mot
e Jusqu'à la fin du mot courant
$ Jusqu'au bout de la ligne
0 (zéro) Au début de la ligne
^ Au premier caractère d'espace non blanc sur la ligne
Retour Jusqu'au début de la ligne suivante
G Alle à la dernière ligne du fichier
1G Alle à la première ligne du fichier
 :n Alle à la ligne n
nG Alle à la ligne n
Ctrl + F Pages en avant d'un écran
Ctrl + D Fait défiler d'un demi-écran vers le bas
Ctrl + B Pages en arrière d'un écran
Ctrl + U Fait défiler d'un demi-écran vers le haut
Ctrl + L Rafraîchit l'écran
Ctrl + G Affiche les informations sur le tampon actuel

Insérer et ajouter du texte

Le tableau décrit les commandes permettant d'insérer et d'ajouter du texte dans un fichier nouveau ou existant à l'aide de l'éditeur vi.

Commande Fonction
un Ajoute du texte après le curseur
A Ajoute du texte à la fin de la ligne
je Insère du texte avant le curseur
Je Insère du texte au début de la ligne
o Ouvre une nouvelle ligne sous le curseur
O Ouvre une nouvelle ligne au-dessus du curseur
 :r nom de fichier Insère le texte d'un autre fichier dans le fichier actuel
Remarque :L'éditeur vi est sensible à la casse. Utilisez la casse appropriée pour les commandes d'entrée. De plus, la plupart des commandes d'entrée et des mouvements du curseur peuvent être précédés d'un nombre pour répéter la commande autant de fois.

Commandes de suppression de texte

Le tableau montre les commandes qui suppriment du texte dans l'éditeur vi.

Commande Fonction
R Écrase ou remplace les caractères sur la ligne à et à droite du curseur. Pour terminer cette opération, appuyez sur Échap.
C Modifie ou écrase les caractères du curseur à la fin de la ligne
s Remplace une chaîne par un caractère au niveau du curseur
x Supprime un caractère au niveau du curseur
dw Supprime un mot ou une partie de mot à droite du curseur
jj Supprime la ligne contenant le curseur
D Supprime la ligne du curseur à l'extrémité droite de la ligne
 :n,nd Supprime les lignes n -n (Par exemple, :5,10d supprime les lignes 5-10.)
Remarque :La sortie de la commande de suppression écrit dans un tampon à partir duquel le texte peut être récupéré.

Vous pouvez utiliser de nombreuses commandes pour modifier des fichiers à l'aide de l'éditeur vi. Les sections suivantes décrivent les opérations de base pour supprimer, modifier, remplacer, copier et coller. N'oubliez pas que l'éditeur vi est sensible à la casse.

Modifier les commandes

Le tableau décrit les commandes pour modifier le texte, annuler une modification et répéter une fonction d'édition dans l'éditeur vi.

Commande Fonction
cw Modifie ou écrase les caractères à l'emplacement du curseur à la fin de ce mot
r Remplace le caractère au niveau du curseur par un autre caractère
J Joint la ligne courante et la ligne en dessous
xp Transpose le caractère au niveau du curseur et le caractère à droite du curseur
~ Change la casse des lettres en majuscules ou minuscules, au niveau du curseur
u Annule la commande précédente
U Annule toutes les modifications apportées à la ligne actuelle
. Répète la commande précédente
Remarque :Beaucoup de ces commandes font passer l'éditeur vi en mode d'entrée. Pour revenir au mode commande, appuyez sur la touche Esc.

Commandes de recherche et de remplacement

Le tableau montre les commandes qui recherchent et remplacent du texte dans l'éditeur vi.

Commande Fonction
/chaîne Recherche en avant la chaîne
?chaîne Recherche la chaîne en arrière
n Recherche la prochaine occurrence de la chaîne. Utilisez cette commande après avoir recherché une chaîne.
N Recherche l'occurrence précédente de la chaîne. Utilisez cette commande après avoir recherché une chaîne.
 : %s/ancien/nouveau/g Recherche l'ancienne chaîne et la remplace globalement par la nouvelle chaîne

Commandes Copier et Coller

Le tableau montre les commandes qui coupent, copient et collent du texte dans l'éditeur vi.

Commande Fonction
aa Retire une copie d'une ligne
p Place le texte copié ou supprimé sous la ligne contenant le curseur
P Place le texte copié ou supprimé avant la ligne contenant le curseur
 :n,n con Copie les lignes n -n et les place après la ligne n (Par exemple, :1,3 co 5 copie les lignes 1-3 et les place après la ligne 5.)
 :n,n m n Déplace les lignes n -n vers la ligne n. Par exemple, :4,6 m 8 déplace les lignes 4-6 vers la ligne 8, la ligne 6 devient la ligne 8, la ligne 5 devient la ligne 7 et la ligne 4 devient la ligne 6.

Enregistrer et quitter les commandes

Le tableau décrit les commandes qui enregistrent le fichier texte, quittent l'éditeur vi et reviennent à l'invite du shell.

Commande Fonction
 :w Enregistre le fichier avec les modifications en écrivant sur le disque
 :w nouveau_nom_fichier Écrit le contenu du tampon dans new_filename
:wq Enregistre le fichier avec les modifications et quitte l'éditeur vi
 :x Enregistre le fichier avec les modifications et quitte l'éditeur vi
ZZ Enregistre le fichier avec les modifications et quitte l'éditeur vi
 :q ! Quitte sans enregistrer les modifications
ZQ Quitte sans enregistrer les modifications

Personnalisation des sessions

Vous pouvez personnaliser une session vi en définissant des variables pour la session. Lorsque vous définissez une variable, vous activez une fonctionnalité qui n'est pas activée par défaut. Vous pouvez utiliser la commande set pour activer et désactiver les variables. Les variables de commande set incluent l'affichage des numéros de ligne et des caractères invisibles, tels que la tabulation et les caractères de fin de ligne.

Pour créer une personnalisation automatique pour toutes vos sessions vi, procédez comme suit :

  1. Créez un fichier nommé .exrc dans votre répertoire personnel.
  2. Entrez l'une des variables définies dans le fichier .exrc.
  3. Entrez chaque variable d'ensemble sans les deux-points précédents.
  4. Entrez chaque commande sur une seule ligne.

L'éditeur vi lit le fichier .exrc situé dans votre répertoire personnel chaque fois que vous ouvrez une session vi, quel que soit votre répertoire de travail actuel.

Remarque :Les mêmes étapes s'appliquent à la personnalisation d'une session dans l'éditeur Vim. Sauf qu'au lieu de créer un fichier .exrc, vous devez créer un .vimrc dossier.

Commandes de personnalisation de session

Le tableau décrit certaines des variables de l'ensemble commande.

Commande Fonction
:set nu Affiche les numéros de ligne
:set nonu Masque les numéros de ligne
:set ic Ordonne aux recherches d'ignorer la casse
 :régler noic Demande aux recherches d'être sensibles à la casse
 :régler noic Affiche les caractères invisibles, tels que ^I pour une tabulation et $ pour les caractères de fin de ligne
 :définir aucune liste Désactive l'affichage des caractères invisibles
 :définir le mode d'affichage Affiche le mode de fonctionnement actuel
 :définir le mode de non-présentation Désactive l'affichage du mode de fonctionnement
 :définir Affiche toutes les variables vi définies
 :définir tout Affiche toutes les variables vi et leurs valeurs actuelles


Linux
  1. Un guide du terminal Linux pour les débutants

  2. Touches fléchées dans Ksh d'Openbsd, édition de ligne de commande, mode Vi ?

  3. Aide-mémoire de la commande 'ip' (référence de la ligne de commande)

  4. Guide du débutant sur SELinux

  5. Clonezilla depuis la ligne de commande

Principes de base de l'éditeur Vim

Utiliser l'éditeur vi

Un guide du débutant sur les tâches Cron

Micro - Un éditeur de texte basé sur la ligne de commande pour Linux

Guide complet de commande Sed [expliqué avec des exemples pratiques]

La commande dpkg sous Linux - Une référence pour les débutants