Edition des fichiers

On est souvent amené à modifier des fichiers dans Unix.

En effet, quand on maintient un serveur à distance via l'invite de commandes, notre seule façon de changer un paramÚtre ou configuration est de modifier un fichier du type texte qui contient ses paramÚtres.

Il existe plusieurs éditeurs de texte qui s'ouvrent directement dans l'invite de commandes. Ses éditeurs prennent le contrÎle entier de notre invite de commandes pour qu'on puissent visionner et modifier le contenu d'un fichier.

nano (ou pico)

nano est un éditeur de text simple est intuitif, qui est aussi installé sur la plupart des distributions Unix et Linux.

En revanche, il n'est pas installé dans notre configuration VSCode. Pour l'installer :

# Installer nano (Ă  faire une fois)
sudo apt install nano

Dans le code ci-dessus, on exécute une instruction privilégié, donc on précise d'abord de le faire en tant que super user (donc sudo). apt est le gestionnaire de packages pour la distribution Ubuntu. On dit à apt d'installer le package qui s'appelle nano.

Pour commencer l'édition d'un fichier :

nano hello.txt
L'éditeur nano

On peut commencer Ă  taper notre texte.

Voici la liste de commandes possibles pour la manipulation du fichier :

Geste clavier
Explication

Ctrl S

sauvegarder le fichier en cours

Ctrl O

sauvegarder sous 
 (permet de changer le nom du fichier)

Ctrl X

quitter

Maj →

sélectionner des caractÚres

Ctrl K

couper (une sĂ©lection, ou la ligne s’il n’y a pas de sĂ©lection)

Alt 6

copier

Ctrl U

coller

Ctrl W

rechercher

Alt W

continuer la recherche

Vous trouverez plus de commandes ici

Donc aprÚs avoir rédiger un peu de texte, appuyer sur Ctrl S pour sauvegarder, puis Ctrl X pour quitter.

Vérifiez que votre fichier a été crée :

hetic@55125d688a1a:/tmp$ ls -l
total 44
-rw-r--r-- 1 hetic hetic    17 déc.  13 14:56 hello.txt

Vérifier les contenus de votre fichier :

hetic@55125d688a1a:/tmp$ cat hello.txt 
This is a test.

vi ou vim

vi est un autre éditeur trÚs puissant, mais qui a une courbe d'apprentissage assez élevée. Il y a, en effet, beaucoup de raccourcis clavier à apprendre, mais une fois appris, on peut aller trÚs vite, et effectuer des opérations complexes.

Souvent, si nano n'est pas installĂ© sur un systĂšme Unix, vous trouverez vi Ă  sa place. Il est donc important de pouvoir au moins crĂ©er et Ă©diter des fichiers avec vi dans le cas oĂč vous n'avez pas suffisamment de permissions pour installer des nouveaux packages.

Pour installer vi dans notre configuration VSCode :

sudo apt install vim

Ouvrez votre fichier texte dans vi :

vi hello.txt
L'éditeur vi

Dans vi, nous trouvons deux modes de fonctionnement

  • Command mode : La touche « Echapper » fait activer le mode « command »

  • Insertion mode : La touche « i » fait activer le mode « insertion » pour la rĂ©daction du text

Quand on lance vi on est par défaut dans le mode « command ». On ne peut pas juste commencer à taper du texte. Les touches auront un autre sens que le texte pûr, et plutÎt chaque touche va effectuer une opération à notre texte selon la position du curseur.

Pour commencer à taper du texte, appuyez sur la touche i. Vous remarquerez en bas à gauche le texte -- INSERTION -- qui indique qu'on est en mode insertion. Vous pouvez désormais taper votre texte.

Une fois terminé, il faut qu'on repasse on mode « commande » pour sauvegarder et quitter l'éditeur.

  • Appuyez sur Esc pour quitter le mode insertion

  • Appuyez sur : puis w puis EntrĂ©e afin de sauvegarder le fichier (w pour write)

  • Appuyez sur : puis q puis EntrĂ©e afin de quitter vi

Si vous voulez quitter sans sauvegarder appuyez sur :q!Entrée

Voici quelques commandes utiles en mode commande :

Geste clavier
Explication

:w

sauvegarder

:wq

enregistrer et quitter

:q

quitter

:q!

quitter sans enregistrer

:234

aller Ă  la ligne 234

yy

copier (yank) la ligne en cours

3yy

copier 3 lignes

yw

copier jusqu’au dĂ©but du prochain mot

yiw

copier le mot actuel

p

coller

dd

couper (delete) la ligne en cours

x

suppression du caractĂšre sous le curseur

:/terme-de-recherche

recherche (puis n pour le mot prochain)

:%s/terme-de-recherche/remplacement/g

chercher le mot et le remplacer partout dans le fichier

D'autres éditeurs

Il existe d'autres éditeurs, comme emacs ou autre. C'est à vous de les tester et décider votre préférence !

La guerre des éditeurs

La guerre des éditeurs

Mis Ă  jour