Informations :
Dates
- Publish : : Saturdy 22 november 2003
- Modification : Thursday 01 september 2011
- 1418 views
Share :
Ouvrir un fichier
Pour voir le contenu d'un fichier avec vi afin de pouvoir le modifier taper la commande :
Script avec 2 lignes
001vi /home/un_fichier
002vim /home/un_fichier
Commandes d'insertion de texte
-
i
(insert) : insertion avant le curseur -
I
(insert) : insertion au début de la ligne -
a
(append) : insertion après le curseur -
A
(append) : insertion à la fin de la ligne -
o
(open) : ouvre une ligne blanche en dessous de la ligne courante -
O
(open) : ouvre une ligne blanche au dessus de la ligne courante
Pour abandonner le mode insertion et retourner au mode commande, appuyer sur la touche insert insertion d'un caractère de contrôle
Commande de concaténation
-
J
concatenate concatène la ligne suivante à la fin de la ligne courante
Commandes de déplacements
-
/
(curseur) : déplacement d'une ligne vers le haut -
/
(curseur) : déplacement d'une ligne vers le bas -
<=
(curseur) : déplacement d'un caractère vers la gauche -
=>
(curseur) : déplacement d'un caractère vers la droite -
w
(word) : avance au début du mot suivant -
F
(forward) : page suivante -
B
(backward) : page précédente -
^
ou0
: début de la ligne courante -
$
: fin de la ligne courante
Recherche d'une chaîne de caractères
-
/texte
: recherche la chaîne "texte" à partir de la position actuelle du curseur vers le bas du fichier -
?texte
: recherche la chaîne "texte" à partir de la position actuelle du curseur vers le haut du fichier -
n
(new) : recherche la prochaine occurence de la chaîne "texte" recherche vers le bas du fichier -
N
(new) : recherche l'occurence précédente de la chaîne "texte" recherche vers le haut du fichier
Suppression et utilisation du buffer
-
x
: suppression du caractère sous le curseur -
X
: suppression du caractère précédent le curseur -
dd
(delete) suppression de la ligne courante -
yy
(yank) : copie la ligne courante dans le buffer -
p
(paste) : colle la ligne contenu dans le buffer après la ligne courante -
P
(paste) : colle la ligne contenu dans le buffer avant la ligne courante -
u
(undo) : annule la dernière commande -
CTRL+R
(redo) : refait la dernière commande annulée
Les commandes x
, X
, dd
, et yy
peuvent être précédées d'un facteur multiplicateur de leur action. Par exemple 7dd
supprimera la ligne courante et les 6 lignes suivantes.
Remplacement
-
r
(replace) : remplace le caractère sous le curseur par un nouveau caractère -
R
(replace) : remplace tous les caractères par de nouveaux caractères. Pour terminer appuyer sur la touche -
C
(change) : remplace la fin de la ligne par de nouveaux caractères. Pour terminer appuyer sur la touche
Expressions régulières et mode commande globale
Les expressions régulières servent à manipuler le fichier texte dans son ensemble.
-
.
: représente un caractère quelconque -
*
: multiplicateur du caractère précédent -
^
: début de ligne -
$
: fin de ligne ou fin de fichier -
: permet de représenter les caractères
. * ^ $
en le mettant devant. Exemple :*
ou$
-
1
: permet la réécriture de l'expression régulière lors d'une substitution -
s
: commande de substitution -
d
: commande de destruction de lignes -
:
: passage en mode commande globale -
g
: parcours global du fichier ou de la ligne
Exemples :
-
:1,$s/neant/bof/g
: de la ligne 1 à la dernière ligne, substitution de la chaîne neant par la chaîne bof -
:1,$s/neant/bof/
: idem mais seulement pour la première occurence de la chaîne neant par ligne -
:1,3s/^.*=/BRAVO
/ : de la ligne 1 à la ligne 3, substitution du début de la ligne^
jusqu'au.*
caractère=
par la chaîne BRAVO -
1,$s/B.*O/1 Veinard/
: rajoute aux mots commençant parB
et terminant par O, le mot "Veinard" -
:1,$s/.$//
: suppression du dernier ($
) caractère quel qu'il soit.
-
:10,20d
: suppression des (d
) lignes 10 à 20 -
:g/^#/d
: suppression des lignes commençant par un#
-
:g/^M/s//^M/g
: suppression des^M
en milieu de ligne et substitution par un vrai retour à la ligne. Taper sur "Enter" pour obtenir le^M
.
Divers mais utiles
-
:set showmode
: indique le mode (insertion ou commande) en bas de la fenêtre -
:set number
: affiche le numéro de chaque ligne -
:155
: positionne sur la ligne 155 -
:set filetype=unix
: transforme le type DOS d'un fichier en type UNIX
Sauvegarder et quitter
-
:w
(write) : sauvegarde le fichier en cours d'édition -
:q
(quit) : abandonne l'édition -
:q!
(quit) : abandonne l'édition sans sauvegarder le fichier -
:x
(exit) : sauvegarde le fichier en cours d'édition et abandonne l'édition (idem:wq
)
Changer les couleurs dans "vim" en plus clair :
Ouvrez le fichier ou créer le :
Script avec 3 lignes
001$ cat $HOME/.vimrc
002syntax on
003colorscheme desert
Default : colorscheme elflord
Liens :
NdM :
20220105 : Ereg color → Read logs with command tail -f
file with strings color?
20240221 : Vim color → Better colors so comments aren't dark blue in Vim?