Editeur VI
Pour le novice, le célèbre éditeur VI fonctionnant sous Linux et Unix reste un mystère quand il veut faire différents changements dans le document. Ainsi, les tableaux suivants récapitulent les différentes commandes (elles n'y sont pas toutes...).
Mode de commande (déplacement)
CTRL+GInfos concernant le fichier, ainsi que la position actuelle dans ce fichier ienclenche le mode insertion amode ajout/suppression d puis ddestruction d'une ligne xdestruction d'un caractère $se positionner à la fin de la ligne Ddétruire une ligne à partir du positionnement du curseur &répéter le changement précédent CTRL+UMonter d'une demi-page CTRL+DDescendre d'une demi-page CTRL+BMonter d'une page CTRL+FDescendre d'une page CTRL+LRafraichissement de l'écran 0Retour au début de la ligne wva au mot suivant brevient au mot d'avant ywCopie le mot yycopie la ligne pcolle le contenu du buffer (après le curseur) Pcolle le contenu du buffer (avant le curseur) .répète la derniére opération uannule la dernière opération Uannule toute les opérations faites sur la ligne rremplace le caractère dwefface le mot cwchange le mot Cchange la ligne /motrecherche mot en descendant ?motrecherche mot en montant nrepète la recherche dans le même sens Nrepète la recherche dans le sens opposé
Mode dernière ligne
Pour accéder au mode commande, il est nécessaire de taper ":" et pour valider la commande, il faut taper sur "Entrée"
jConcaténation de lignes ddestruction de lignes xSauver et quitter wSauver wqSauver et quitter $se déplacer à la fin du fichier npasser au fichier suivant si plusieurs fichiers qquitter !se rajoute à la fin de la commande pour forcer l'acceptation (ex: :wq! + Entrée) f "nom_fichier"change le nom du fichier courant r "nom_fichier"insère le fichier après la ligne courante eréedite le fichier e!réedite le tampon e#bascule d'un fichier à l'autre e "nom_fichier"édite le fichier "nom_fichier" g/str/cmdexécute la commande cmd sur les lignes qui contiennent str (:g/str/d pour effacer tous les str du fichier) !cmdexécute une commande shell !!relance la dernière commande shell .=donne le numéro de la ligne courante m,nddétruit les lignes m à n set nunumérote les lignes set nonuenlève la numérotation set allmontre les paramètres actifs set listaffiche les caractères invisibles set showmodeaffiche le mode en cours (insert mode, replace mode...) set noicignorer la casse en recherche set icAnnuler le set noic virelance le mode commande Substitution dans le mode dernière ligne
La commande permettant la substitution est tellement modulable que je préfère l'expliquer à part :
ex de substitution : Je veux substituer tous les abc par xyz sur les 3 premières lignes en demandant la confirmation :
:1,3s/abc/xyz/c
Ainsi, on voit bien les lignes 1 à 3 où l'on veut substituer (s) abc par xyz, et le c pour demander la confirmation.