Dans ce chapitre, vous allez apprendre à travailler avec l'éditeur VIsual.
Objectifs : Dans ce chapitre, les futurs administrateurs Linux vont apprendre comment :
Utiliser les principales commandes de l’éditeur VI ; Modifier un texte grâce à l’éditeur VI.
commandes utilisateurs, linux
Connaissances : ** Complexité : **
Temps de lecture : 20 minutes
Visual (VI) est un éditeur de texte très populaire sous Linux malgré une ergonomie qui semble limitée. C’est en effet un éditeur entièrement en mode texte : chacune des actions se faisant avec une touche du clavier ou des commandes dédiées.
Très puissant, il est surtout très pratique puisqu’il est dans l’ensemble minimal des applications de base. Il est donc accessible en cas de défaillance du système. Son universalité (il est présent sur toutes les distributions Linux et sous Unix) en fait un outil incontournable de l’administrateur.
Exécute VI en précisant une commande à l’ouverture
Si le fichier existe à l’endroit mentionné par le chemin, celui-ci est lu par VI qui se place en mode commandes.
Si le fichier n’existe pas, VI ouvre un fichier vierge et une page vide est affichée à l’écran. À l’enregistrement du fichier, celui-ci prendra le nom précisé avec la commande.
Si la commande vi est exécutée sans préciser de nom de fichier, VI ouvre un fichier vierge et une page vide est affichée à l’écran. À l’enregistrement du fichier, VI demandera un nom de fichier.
L’éditeur vim reprend l’interface et les fonctions de VI avec de nombreuses améliorations.
vim[-ccommande][fichier]
Parmi ces améliorations, l’utilisateur dispose de la coloration syntaxique, très utile pour éditer des scripts shell ou des fichiers de configuration.
Pendant une session, VI utilise un fichier tampon dans lequel il inscrit toutes les modifications effectuées par l’utilisateur.
Note
Tant que l’utilisateur n’a pas enregistré son travail, le fichier d’origine n’est pas modifié.
Au démarrage, VI est en mode commandes.
Astuce
Une ligne de texte se termine en appuyant sur ENTREE mais si l’écran n’est pas assez large, VI effectue des retours à la ligne automatiques, configuration wrap par défaut. Ces retours à la ligne peuvent ne pas être souhaités, c’est la configuration nowrap.
Pour sortir de VI, il faut, depuis le mode Commandes, taper sur : puis saisir :
q pour sortir sans sauvegarder (quit) ;
w pour enregistrer son travail (write) ;
wq (write quit) ou x (eXit) pour sortir et sauvegarder.
En mode command, cliquer sur la touche Z (en majuscule) deux fois de suite pour sauvegarder et sortir.
Pour forcer la sortie sans confirmation, il faut ajouter ! aux commandes précédentes.
Avertissement
Il n’y a pas de sauvegarde périodique, il faut donc penser à sauvegarder son travail régulièrement.
C’est le mode par défaut au démarrage de VI. Pour y accéder à partir d’un des autres modes, il suffit de taper sur la touche ECHAP.
À ce stade, tous les frappe du clavier sont interprétés comme des commandes et les actions correspondantes sont exécutées. Ce sont essentiellement des commandes permettant la modification de texte (copier, coller, annuler, …).
C’est le mode de modification du texte. Pour y accéder à partir du mode commandes, il faut taper sur des touches particulières qui effectueront une action en plus de changer de mode.
La saisie du texte ne s’effectue pas directement sur le fichier mais dans une zone tampon de la mémoire. Les modifications ne sont effectives que lors de l’enregistrement du fichier.
C’est le mode de modification du fichier. Pour y accéder, il faut d’abord passer en mode commandes, puis saisir la commande ex commençant fréquemment par le caractère : .
La commande est validée en appuyant sur la touche ENTREE.
En mode commandes, il existe plusieurs façons de déplacer le curseur.
La souris n’étant pas active dans un environnement texte mais l’est dans un environnement graphique, il est possible de le déplacer caractère par caractère, mais des raccourcis existent pour aller plus vite.
VI reste en mode commandes après le déplacement du curseur.
Il faut positionner le curseur sous le premier caractère du mot à couper (ou copier) sinon VI coupera (ou copiera) seulement la partie du mot entre le curseur et la fin.
Supprimer un mot revient à le couper. S’il n’est pas collé ensuite, le tampon est vidé et le mot est supprimé.
Le mode Ex permet d’agir sur le fichier (enregistrement, mise en page, options, …). C’est aussi en mode Ex que se saisissent les commandes de recherche et de remplacement. Les commandes sont affichées en bas de page et doivent être validées avec la touche ENTREE.
Pour passer en mode Ex, du mode commandes, taper :.
De la 1ère à la dernière ligne du texte, remplacer la chaîne recherchée par la chaîne précisée :
:1,$ s/recherche/remplace
Note: Vous pouvez aussi utiliser :0,$s/recherche/remplace pour commencer au tout début du fichier.
De la ligne n à la ligne m, remplacer la chaîne recherchée par la chaîne précisée :
:n,m s/recherche/remplace
Par défaut, seule la première occurrence trouvée de chaque ligne est remplacée. Pour forcer le remplacement de chaque occurrence, il faut ajouter /g à la fin de la commande :
:n,m s/recherche/remplace/g
Parcourir tout un fichier pour y remplacer la chaîne recherchée par la chaîne précisée :
Il est possible d’exécuter VI en précisant les options à charger pour la session. Pour cela, il faut utiliser l’option -c :
vi-c"set nu"/home/rockstar/file
Il est aussi possible de saisir les commandes Ex dans un fichier nommé .exrc mis dans le répertoire de connexion de l’utilisateur. À chaque démarrage de VI ou de VIM, les commandes seront lues et appliquées.