terminal
vim – editeur texte puissant en console sous linux ubuntu fedora debian etc.
Pour ceux qui administrent des serveurs en SSH, vim est un éditeur connu, tout comme nano ou emacs.
Dans ce post je vous présente l’utilisation basique de vim, un éditeur très puissant.
Mais présentement, nous allons voir l’essentiel, ouvrir un fichier, rechercher un texte, modifier un caractère, insérer du texte etc.
Vim n’est pas toujours installé par défaut sur toutes les distributions. Vous devrez éventuellement l’installer.
Sous ubuntu en console (ou terminal):
[bash]sudo apt-get install vim[/bash]
Sous Fedora en root en console (ou terminal):
[bash]yum install vim[/bash]
Une fois installé, vous voilà prêt à éditer tout type de fichier, ou a en créer.
Voici une liste des commandes de base :
vim = lancer vim
vim nom_de_fichier = ouvrir le fichier nom_de_fichier avec vim
vim nom_de_fichier +134 = ouvrir le fichier nom_de_fichier avec vim à la ligne 134
Une fois lancé, vous pouvez de base vous déplacer dans le fichier avec les flèches du clavier, ou encore avec les touches « page up » et « page down ».
Pour éditer le texte vous devez passer en mode « édition », en tapant simplement sur la touche « i » (pour insertion). A partir de là, tout ce que vous tapez sera inséré.
Pour quitter le mode insertion, appuyez une fois sur « echap ».
Vous pouvez maintenant quitter en sauvant la modification en tapant sur la touche « echap », puis « : », puis « wq » et « entrée ».
La pression sur la touche « échap » vous place en mode « action » et vous permet de passer une commande. les actions sont :
i = mode insertion (ne nécessite pas de valider par « entrée »)
w = sauvegarder, ecrire le fichier
q = quitter
q! = quitter en abandonnant les modifications
w! = sauvegarder même si le fichier est verrouillé.
x = supprimer le caractère sous le curseur
dd = supprimer la ligne sous le curseur
G (shift + g) = aller a la fin du fichier
/chaine = rechercher dans le fichier la chaine « chaine »
n = chercher l’occurrence suivante de la chaine recherchée (ne nécessite pas de valider par « entrée »).
Voilà pour les commandes de base. Le plus souvent voila les commandes que je tape :
[code]vim mon_fichier.txt (entrée)
/machaine (entrée)
i (mode insertion)
Je tape ce que je veux ajouter
echap
:
wq (entrée)[/code]
Vim comporte des options plus évoluées qu’il serait difficile de décrire en intégralité, par exemple, on peut rechercher et remplacer une chaine automatiquement avec la commande suivante :
[code]:%s/foo/bar/g[/code]
Recherche toutes les occurrences de « foo » et la remplace par « bar ».
[code]:%s/foo/bar/gc[/code]
La même chose avec demande de confirmation avant chaque remplacement.
Plus d’informations ici : http://vim.wikia.com/wiki/Search_and_replace
C’est tout pour ce petit tour très basique sur l’utilisation de vim, mais sachez que vim peut fonctionner en client/serveur, supporte les expressions régulières (ou rationnelles) dans les commandes, supporte la coloration syntaxique de la plupart des langages connus etc.
Pour avoir une formation sous forme de tutoriel, il vous suffit de taper dans votre console :
[bash]vimtutor[/bash]
Avec un peu d’habitude, vim deviendra votre compagnon indispensable, et vous permettra de gérer la plupart de vos interventions sur des fichiers éditable en quelques secondes (fichiers de configuration, html, php, et tout autre script).
![]()
Bash : lire un fichier ligne par ligne avec une boucle while
Encore une fois, rien ne vaut l’apprentissage par l’exemple. Ci dessous le fichier bash exemple, qui va lire le fichier /etc/passwd ligne par ligne.
[bash]#!/bin/bash
while read line
do
echo ${line}
done < /etc/passwd[/bash]
donc ici, les lignes sont chargées dans la variable « line » et simplement affichées par la commande echo, mais on peut utiliser ça dans bien des situations ;)
Note : Pour fonctionner, ce fichier doit être appelé par la commande [bash]sudo sh fichier.sh[/bash] ou, en le rendant exécutable après enregistrement, comme suit :
[bash]chmod +x fichier.sh[/bash]
Puis est lançable directement :
[bash]sudo ./fichier.sh[/bash].
On utilise ici « sudo » car il y a des chances que ce fichier ne soit accessible que par le compte root.
![]()
Pages
- À propos
- Alexandre Blanc Experience or work background
- Connected=hacked, cloud=leak, why
- Keeping track for my speaking events / appearances
- My take on Zero Trust – SP 800-207
- Openvpn and pihole on OVH VPS Server FAQ
- Raspberry 3 router project FAQ
- Spotting LinkedIn fake profiles, the tail of industrial spying, should I trust this contact ?
Search this Site
Archive
- août 2026
- avril 2025
- juin 2024
- mai 2024
- mars 2024
- février 2022
- janvier 2022
- octobre 2021
- septembre 2021
- mai 2021
- octobre 2020
- juin 2020
- avril 2020
- avril 2019
- janvier 2019
- juin 2018
- mars 2017
- octobre 2016
- août 2016
- mai 2016
- septembre 2015
- mai 2015
- février 2015
- novembre 2014
- septembre 2014
- août 2014
- janvier 2013
- décembre 2012
- juillet 2012
- janvier 2012
- novembre 2011
- octobre 2011
- mai 2011
- avril 2011
- mars 2011
- février 2011
- janvier 2011
- décembre 2010
- novembre 2010
- octobre 2010
- septembre 2010