Lisez et modifiez des fichiers texte depuis le terminal

À peine arrivé, un collègue vous transmet en urgence un fichier texte issu d'un export applicatif. Ce document contient des informations cruciales pour l'équipe, mais une valeur incorrecte s'y est glissée et bloque complètement la suite de l'analyse.

Pour mener à bien cette mission, vous allez vous concentrer sur deux grandes étapes :

  1. Consulter efficacement le contenu de cet export directement depuis le terminal, sans surcharger l'écran.

  2. Modifier la valeur erronée de manière totalement sécurisée en utilisant l'éditeur Vim.

D'accord, le plan d'action est clair. Mais au fait, c'est quoi exactement un fichier texte sous Linux ?

Comprenez le rôle des fichiers texte sous Linux

Dès vos premiers pas sur notre environnement, vous allez remarquer une chose fondamentale : les fichiers texte sont omniprésents sous Linux. Qu'il s'agisse de fichiers de configuration qui dictent le comportement de nos serveurs, de logs qui enregistrent tout ce qu'il s'y passe, ou de données brutes exportées par nos applications métiers, tout est stocké au format texte.

Une capture d'écran montrant un exemple de fichier texte classique ouvert dans le terminal.
Exemple de fichier texte

Lire ces fichiers permet en effet de comprendre de l'intérieur le fonctionnement d'un système. De la même manière, modifier un de ces fichiers texte n'est pas anodin : cela peut avoir un impact immédiat sur le comportement d'un programme ou de l'ensemble du système. C'est d'ailleurs toute la puissance de cet environnement. En modifiant quelques lignes, on peut corriger un bug critique ou ajuster les paramètres d'une application pour toute l'équipe.

Sous Linux, comprendre un système commence souvent par lire ses fichiers.

Consultez efficacement le contenu des fichiers texte

Une fois dans le bon fichier, encore faut-il pouvoir l'afficher. Le fameux fichier d'export applicatif que votre collègue vous a transmis en urgence contient des milliers de lignes. Tenter de l’ouvrir avec un éditeur de texte classique (comme nano) ne serait pas la méthode la plus efficace : la lecture pourrait devenir peu pratique et moins fluide sur un fichier volumineux, dépassant les 10 Mo. Heureusement, le terminal dispose de commandes redoutables pour consulter ces contenus à la volée, sans surcharger votre écran. Les voici :

  • Afficher tout d'un coup aveccat: La commandecataffiche le contenu brut d'un document directement dans le terminal. C'est parfait pour lire un petit fichier de configuration. 

cat fichier.txt
  • Prendre le temps de lire avecless: Pour les documents imposants, c'est la commandelessqu'il faut privilégier. Elle permet une lecture paginée et interactive. C'est un peu comme ouvrir un livre numérique : le terminal charge uniquement la partie du texte qui s'affiche à l'écran, ce qui rend l'ouverture quasi instantanée. On peut ensuite utiliser les flèches du clavier pour descendre ligne par ligne, ou la touche Espace pour faire défiler page par page. Pour quitter ce mode de lecture et revenir à l'invite de commande, il suffit d'appuyer sur la toucheq(pour quit).

less fichier.txt
  • Aller à l'essentiel avecheadettail: Bien souvent, on n'a pas besoin de parcourir l'intégralité d'un document. Ces deux commandes permettent d'inspecter rapidement les extrémités d'un fichier sans l'afficher entièrement.

    • headaffiche par défaut les 10 premières lignes. C'est idéal pour vérifier rapidement la structure d'un export ou s'assurer de la présence des en-têtes de colonnes.

    • tailaffiche par défaut les 10 dernières lignes. C'est une commande extrêmement pratique pour le diagnostic : elle permet par exemple de voir instantanément les toutes dernières erreurs enregistrées à la fin d'un log. 

head fichier.txt

tail fichier.txt

Laissez-nous vous montrer comment jongler entre ces commandes sur le terminal pour inspecter notre fameux export et repérer visuellement l'erreur signalée par l'équipe.

Dans cette vidéo, on a :

  • affiché le contenu brut d'un petit fichier grâce à la commande  cat  ,

  • exploré un fichier volumineux de manière paginée et interactive en utilisant  less  ,

  • inspecté la structure initiale d'un document avec la commande  head  ,

  • consulté instantanément les dernières lignes d'un fichier grâce à la commande  tail  .

Modifiez des fichiers texte avec l’éditeur Vim

Vous venez de parcourir le fichier et vous avez identifié la fameuse erreur signalée par l'équipe. L'étape suivante ? La corriger.

Sous Linux, plusieurs éditeurs de texte peuvent être utilisés dans le terminal, comme nano ou Vim. Pour notre travail au sein de l'équipe, nous allons utiliser Vim, car plus performant que nano dans notre contexte.

Cet éditeur en ligne de commande est incontournable, car il est disponible sur la majorité des systèmes Linux. Arthur s'amuse souvent d'un rite de passage classique :

La première fois qu'on ouvre Vim, on n'a aucune idée de la façon dont on doit écrire dedans, et on doit souvent fermer complètement le terminal pour réussir à en sortir !

C'est tout à fait normal, car Vim fonctionne avec une logique bien particulière : des modes distincts. Contrairement à un éditeur classique où on peut cliquer et taper immédiatement, Vim démarre toujours dans un mode d'observation. Cette séparation évite les modifications involontaires lorsque l'on parcourt des fichiers critiques. 

Pour bien visualiser, imaginez que Vim est un stylo avec un capuchon :

  • Le mode Normal (le stylo fermé) : C'est le mode par défaut pour se déplacer et lire le fichier. Vous pouvez utiliser le clavier pour naviguer, mais appuyer sur une lettre n'écrira rien. Le capuchon est fermé, on ne risque pas de raturer le document par accident.

  • Le mode Insertion (le stylo ouvert) : C'est le mode pour insérer ou modifier du texte. Vous retirez le capuchon pour écrire.

Il n'est pas nécessaire de connaître toutes les fonctionnalités de Vim pour être opérationnel. L'essentiel est de maîtriser la gymnastique entre ces deux modes.  

Regardons quelles commandes suivre pour corriger l'erreur de notre export, de l'ouverture à la sauvegarde, sans jamais quitter son terminal.

Dans cette vidéo, on a :

  • ouvert un fichier texte directement dans le terminal avec Vim,

  • navigué jusqu'à l'erreur de manière sécurisée en mode Normal,

  • basculé en mode Insertion avec la touche i pour corriger la donnée,

  • sécurisé le document en revenant au mode Normal avec  Esc  ,

  • sauvegardé et quitté l'éditeur à l'aide des commandes  :w  et  :q.

À vous de jouer

Contexte 

C’est le moment de passer derrière le clavier ! Un collègue de l'équipe vous transmet un fichier texte issu d’un export applicatif. Ce document contient des informations utiles, mais notre outil d'analyse refuse de le traiter à cause d'une valeur incorrecte. L'outil s'attend à ce que chaque ligne active possède très exactement la mention  statut=EN_COURS  . Cependant, suite à un bug lors de l'export, l'une des lignes contient une faute de frappe et affiche  statut=ENCOURS  (sans le tiret du bas). Votre mission est de repérer cette anomalie au milieu des autres données et de la corriger proprement pour débloquer la situation.

Préparation de l’environnement

Avant de commencer, vous devez disposer du fichier export_donnees.txt dans votre dossier de travail sur votre machine virtuelle Ubuntu. Assurez-vous que votre terminal est bien positionné dans votre dossier personnel :

cd

À partir de là, deux méthodes sont possibles, choisissez celle qui vous convient :

Méthode 1 - Via l'interface graphique d'Ubuntu

  1. Depuis votre machine virtuelle Ubuntu, ouvrez Firefox.

  2. Connectez-vous à OpenClassrooms et rendez-vous sur cette page du cours.

  3. Cliquez sur le lien du fichier pour le télécharger. Il se place automatiquement dans le dossier Téléchargements.

  4. Depuis le terminal, déplacez-le dans votre dossier personnel :

    mv ~/Téléchargements/export_donnees.txt ~/

Méthode 2 - Directement depuis le terminal

  1. Ouvrez un terminal et tapez la commande suivante :  

    wget -O export_donnees.txt https://bit.ly/4c9gaT4
  2. Le fichier est téléchargé directement dans votre dossier personnel. Vérifiez qu'il est bien présent :  

    ls

Consignes

  1. Avant de modifier le fichier, vous pouvez consulter son contenu à l’aide d’une commande adaptée afin de repérer rapidement l’erreur.

  2. Ouvrez le fichier texte avec l’éditeur Vim.

  3. Naviguez jusqu'à la ligne contenant la valeur mal orthographiée et passez dans le bon mode pour modifier la valeur (rétablir la syntaxe  statut=EN_COURS).

  4. Enregistrez le fichier et quittez l'éditeur de manière sécurisée.

  5. Vérifiez une dernière fois que la modification a bien été prise en compte en consultant à nouveau le contenu du fichier.

En résumé

  • Les fichiers texte occupent une place centrale sous Linux, car ils servent à stocker les configurations, les journaux et les données nécessaires au fonctionnement du système et des applications.

  • Les commandescat,less,headettailpermettent de consulter efficacement le contenu d’un fichier texte selon sa taille et le niveau de détail recherché.

  • La commandelessoffre une lecture paginée et interactive, idéale pour analyser des fichiers volumineux sans surcharger l’affichage du terminal.

  • L’éditeur Vim permet de modifier des fichiers directement depuis le terminal en distinguant le mode Normal pour la navigation et le mode Insertion pour l’édition.

  • Les commandes:w,:q,:wqet:q!assurent respectivement l’enregistrement, la sortie et la gestion sécurisée des modifications lors de l’édition d’un fichier texte.

Maintenant que vous êtes capable de lire et de modifier manuellement nos documents, vous allez vite réaliser qu'il est parfois impossible de parcourir visuellement un fichier lorsqu'il contient des centaines de milliers de lignes. Dans la suite de notre mission, nous allons découvrir comment faire ressortir précisément l'information utile au milieu de ce grand volume de données en maîtrisant les flux et les redirections !

Et si vous obteniez un diplôme OpenClassrooms ?
  • Formations jusqu’à 100 % financées
  • Date de début flexible
  • Projets professionnalisants
  • Mentorat individuel
Trouvez la formation et le financement faits pour vous