vigueur
est l'un des éditeurs de fichiers les plus populaires sous Linux. Une partie de la popularité est due au mode de ligne de commande de vim, qui permet aux utilisateurs, en particulier aux développeurs de logiciels et aux utilisateurs avancés, d'optimiser le temps nécessaire aux opérations de modification de fichiers.
Dans cet article, nous verrons comment rechercher et remplacer du texte dans vigueur
mode ligne de commande.
Tout d'abord, ouvrons un fichier texte dans vim :
test vim.txt
Vim fonctionne dans différents modes. Les deux modes les plus importants sont le mode commande mentionné ci-dessus, et le second est le mode Insertion, utilisé pour modifier le contenu du fichier.
Par défaut, lorsqu'un fichier est ouvert, vim fonctionne en mode commande. Vous pouvez appuyer sur je
pour passer en mode Insertion.
En mode Commande, vous pouvez directement commencer à taper des commandes vim ; ils apparaissent en bas du terminal. Cette partie inférieure agit comme une invite de commande intégrée dans vim.
Pour rechercher une chaîne, tapez une barre oblique inverse /
suivi de la chaîne à rechercher.
Par exemple : /chien
Comme vu ci-dessus, il amène le curseur à l'occurrence suivante de la chaîne à partir de la position où le curseur est placé. Le curseur a été placé sur la chaîne brun
comme indiqué dans une image précédente. Pour rechercher les occurrences suivantes, appuyez sur m
. Après la dernière occurrence, il revient au premier, donnant un message « recherche en BAS, continue en HAUT ».
Pour rechercher une chaîne avec un caractère spécial, ou par exemple des caractères comme un plus (+) ou un espace, précèdent le caractère d'une barre oblique :
Par exemple : /C\+
Pour rechercher et remplacer la première occurrence de chaîne sur une ligne, nous plaçons le curseur sur cette ligne et utilisons la commande suivante :
Par exemple : :s/chien/tigre
Comme vous pouvez le voir dans la capture d'écran ci-dessus, la troisième ligne où le curseur est placé, le mot chien
a été remplacé par tigre
comme indiqué dans la commande.
Pour rechercher et remplacer toutes les occurrences de chaîne sur une ligne, utiliser /g
à la fin.
Par exemple : :s/chat/chien/g
Pour rechercher et remplacer toutes les occurrences globalement, nous utilisons %s
au lieu de seulement s
:
Par exemple : %s/chien/souris
Si la chaîne est constituée d'un caractère spécial comme un espace, elle peut être précédée d'une barre oblique, de la même manière que précédemment.
? Acclamations!