Dans ce didacticiel Linux, vous apprendrez les raccourcis de l'éditeur VI, quelques astuces et quelques hacks de productivité pouvant être utilisés par les ingénieurs et développeurs DevOps.
Si vous êtes un ingénieur DevOps ou quelqu'un qui travaille sur des systèmes Linux, l'éditeur vi est souvent utilisé pour éditer des fichiers. Cependant, contrairement aux éditeurs GUI, les utilisateurs novices de l'éditeur VI sont intimidés en raison des différentes frappes de touches pour contrôler l'édition.
Cependant, vous pouvez gagner du temps et augmenter la productivité avec un peu de pratique et les raccourcis de l'éditeur vi dans vos activités quotidiennes. Une fois que vous aurez compris, vous commencerez à aimer l'éditeur VI. De plus, c'est un éditeur de texte très puissant dans l'écosystème Linux.
Raccourcis de l'éditeur VI pour les débutants
Dans cet article, nous couvrirons les raccourcis nécessaires de l'éditeur VI que vous pourriez utiliser dans les activités quotidiennes de Linux.
J'ai également écrit un article sur l'apprentissage des scripts shell pour DevOps. Les hacks de l'éditeur VI sont également utiles lorsque vous travaillez avec des scripts shell.
Modes de l'éditeur VI
Avant d'entrer dans les raccourcis, vous devez comprendre les cinq modes de l'éditeur vim.
Il existe cinq modes dans l'éditeur VI.
- Mode normal
- Mode Insertion
- Mode visuel
- Mode de commande
- Mode Remplacer
Mode normal
Lorsque vous ouvrez un fichier dans l'éditeur VI, le mode par défaut est Normal Mode
. Dans ce mode, vous pouvez utiliser le curseur pour parcourir le fichier à l'aide de différents raccourcis.
Voici les raccourcis pour déplacer le curseur dans différentes directions. Si vous ajoutez un nombre au raccourci, le mouvement est multiplié.
Raccourci VI | Action |
h | Déplacer un caractère vers la gauche (4h déplacera quatre caractères vers la gauche) |
j | Déplacer une ligne vers le bas ( 4j -> 4 lignes vers le bas) |
k | Déplacer une ligne vers le haut (5k -> 5 lignes vers le haut) |
l | Déplacer un caractère vers la droite (8l -> 8 caractères vers la droite) |
Ensuite, nous apprendrons les raccourcis pour parcourir les mots. Ici, les caractères minuscules et majuscules ont des fonctions différentes.
Raccourci VI | Action |
w | Alle au début du mot. W va au début du mot suivant après l'espace. |
b | Alle au début du mot précédent. B va au début du mot précédent avant l'espace. |
e | Allé à la fin du mot.E va à la fin du mot avant l'espace. |
Le raccourci suivant est requis la plupart du temps lorsque vous travaillez avec des fichiers.
Raccourci VI | Action |
0 | Alle au début de la ligne |
$ | Alle à la fin de la ligne |
Mode d'insertion
En mode insertion, vous pouvez modifier le fichier. Voici les raccourcis pour l'édition. Encore une fois, les caractères minuscules et majuscules ont des fonctions différentes ici.
Raccourci VI | Action |
je | L'éditeur VI entre pour en insérer plus. ( je –> Va au début de la ligne en mode insertion) |
a | Le curseur passe au caractère suivant en mode insertion ( A – passe à la fin de la ligne en mode Insertion) |
o | Insère un nouveau à partir de la position actuelle du curseur en mode insertion. (O – insère une nouvelle ligne au-dessus de la position actuelle du curseur en mode insertion) |
Mode visuel
Le mode visuel facilite la sélection et la modification de texte dans l'éditeur VI. Pour entrer dans le mode visuel, entrez simplement "v
".
Vous pourrez sélectionner plusieurs lignes.
Mode de commande
En mode commande, vous pouvez exécuter des commandes et manipuler du texte. Par exemple, recherchez et remplacez un texte dans tout le fichier.
Vous devez connaître les éléments suivants pour travailler avec le mode de commande.
Raccourci VI | Action |
s | Pour démarrer le mode commande |
% | Considére toutes les lignes du fichier. |
s | pour substitution. |
/g | changement global |
Nous verrons quelques-uns des exemples de mode de commande plus loin dans l'article.
Mode de remplacement
Le mode Remplacer consiste à remplacer les textes existants dans un document.
placez le curseur sur le premier caractère d'une œuvre et saisissez "R
” en mode normal. Une fois que vous commencez à taper, le mot sera remplacé.
Configuration de l'environnement de l'éditeur VI
Avant de plonger dans les raccourcis et les commandes, vous devez comprendre les paramètres de l'éditeur vi. Vous pouvez définir tous les paramètres nécessaires de l'éditeur vi dans le ~/.vimrc
fichier qui sera chargé par défaut.
Si vous n'avez pas le vimrc
fichier, créez-en un en utilisant touch ~/.vimrc
Voici les paramètres communs dont vous pourriez avoir besoin dans le vimrc
fichier.
set number set autoindent set shiftwidth=4 set softtabstop=4 set expandtab
Le set number
paramètre définira le numéro de ligne de votre éditeur vi.
Vous pouvez l'activer et le désactiver temporairement en exécutant :set nonumber
de l'éditeur
Couper Copier Coller dans l'éditeur Vi
Suivez les étapes ci-dessous pour copier et coller en utilisant le mode visuel.
- Entrez en mode visuel en utilisant
ESC + v
et déplacez le curseur pour sélectionner la chaîne que vous souhaitez copier. - Utilisez un
V
majuscule pour sélectionner toute la ligne. - Utilisez
d
couper ouy
copier. - Placez le curseur à l'endroit souhaité et appuyez sur
p
à coller.
Le Gif suivant montre la démo.
Supprimer des lignes et des mots
Voici comment vous pouvez supprimer des lignes et des mots dans l'éditeur VI.
- Placez le curseur sur la ligne que vous souhaitez supprimer et appuyez sur
dd
pour supprimer cette ligne - Pour supprimer un nombre spécifique de lignes, vous pouvez utiliser
d10d
. Cela supprimera 10 lignes à partir du curseur . Vous pouvez donner n'importe quel nombre au lieu de 10 en fonction de vos besoins. - Pour sélectionner et supprimer une ligne spécifique, utilisez
Shift + V
(Mode visuel) puis utilisez les flèches haut et bas pour la sélection. Une fois que vous avez sélectionné les lignes, appuyez surd
pour supprimer toutes les lignes sélectionnées.
Pour supprimer des mots, activez le mode d'insertion (ESC + I) et vous pouvez faire ce qui suit.
Ctrl + w
supprimera le dernier mot où se trouve le curseur.Ctrl + u
supprimera tous les mots qui sont immédiatement à gauche du curseur.
Rechercher et remplacer des textes
Vous pouvez rechercher dans vos fichiers en appuyant sur /
en mode normal.
Par exemple, si vous souhaitez rechercher un mot-clé data
, vous devez procéder comme suit.
/data
Pour trouver l'occurrence suivante, appuyez simplement sur n
Remarque : Les recherches sont sensibles à la casse. Si vous voulez une recherche insensible à la casse, vous devez définir
:set ignorecase
dans l'éditeur.
Entrer en mode commande (ESC + :
) et utilisez la syntaxe suivante pour remplacer un modèle.
:%s/pattern/replace/g
Utilisez la syntaxe suivante pour remplacer chaque occurrence par une invite. Il mettra en évidence toutes les occurrences. Vous pouvez choisir quelle occurrence remplacer et laquelle laisser telle quelle.
:%s/pattern/replace/gc
Convertir en majuscules et minuscules
Pour toute conversion de texte en casse, gardez le curseur sur la ligne et utilisez les raccourcis suivants en mode normal (ESC
).
- Pour convertir une ligne en majuscule, utilisez
gUU
- Pour convertir une ligne en minuscules, utilisez
guu
Copier le contenu d'un autre fichier dans l'éditeur Vi
Ce n'est pas quelque chose que vous faites très souvent. Cependant, si vous avez besoin d'ajouter le contenu d'un autre fichier au fichier en cours d'édition, placez le curseur sur la ligne souhaitée et vous pourrez utiliser la syntaxe suivante en mode commande. Le contenu du fichier spécifié sera copié à partir de la ligne suivante du curseur.
:r /path/to/file
Par exemple, si vous copiez les informations sur le processeur dans un fichier existant, vous utiliserez la commande suivante.
:r /proc/cpuinfo
Exécuter/Copier le contenu de la commande
Vous pouvez exécuter d'autres commandes Linux dans l'éditeur en mode commande (ESC + :
)
Pour exécuter des commandes depuis l'éditeur, vous pouvez utiliser :! <command>
. Par exemple,
:! pwd
Si vous souhaitez que la sortie d'une commande soit copiée dans le fichier d'édition, vous pouvez utiliser :r! <command>.
Par exemple,
pour obtenir et copier le eth0
adresse IP, vous pouvez faire ce qui suit.
:r! ip addr | grep eth0 | grep inet | awk '{print $2}' | cut -d / -f1
Aide de l'éditeur Vi
Il y a tellement de choses que vous pouvez faire avec l'éditeur VI.
Si vous souhaitez devenir un utilisateur expérimenté de l'éditeur VI, vous devez utiliser la fonctionnalité de tuteur VIM.
vimtutor
Il ouvre un didacticiel en ligne de commande dans votre terminal. Et vous pouvez utiliser toutes les commandes vi normales pour parcourir le document d'aide.
Conclusion
VI est un éditeur très puissant.
Comprendre toutes les fonctionnalités et tous les raccourcis de l'éditeur vi demande du temps et une pratique constante.
J'ai expliqué certaines commandes, astuces et raccourcis de l'éditeur vi qui vous feront gagner du temps lors de l'utilisation de l'éditeur vi.
Si vous pensez avoir des astuces, partagez-les avec nous dans la section des commentaires. Cela pourrait aider les autres.
Si vous débutez en tant qu'ingénieur DevOps, consultez également les importantes commandes de dépannage Linux.