Parcours 0 — Avant de commencer · leçon gratuite · 15 min
Chemins absolus et relatifs
Un chemin est une adresse. Absolu : depuis la racine. Relatif : depuis là où tu es. Confondre les deux est l’erreur n°1 des débutants.
Objectifs
- Lire un chemin et dire s’il est absolu ou relatif
- Utiliser . (ici), .. (parent) et ~ (chez moi)
- Prédire où mène un cd avant de le taper
Un chemin (path) est l'adresse d'un fichier ou d'un dossier dans l'arbre. Il y a deux façons de l'écrire.
Le chemin absolu part de la racine et ne dépend pas d'où tu es. Il commence par / (macOS, Linux) ou par une lettre de lecteur C:\ (Windows) :
/Users/lea/projets/mon-site/index.html
C:\Users\lea\projets\mon-site\index.htmlLe chemin relatif part du dossier où tu es. Il ne commence pas par / :
projets/mon-site/index.html ← si je suis dans /Users/lea
mon-site/index.html ← si je suis dans /Users/lea/projets
index.html ← si je suis dans mon-siteTrois raccourcis à connaître par cœur :
| Raccourci | Signifie | Exemple |
|---|---|---|
| . | le dossier courant (ici) | open . ouvre le dossier courant dans le Finder |
| .. | le dossier parent (un cran au-dessus) | cd .. remonte |
| ~ | ton dossier personnel | cd ~/projets fonctionne d'où que tu sois |
Le séparateur est / sur macOS et Linux, \ sur Windows — mais PowerShell et presque tous les outils de développement acceptent / aussi sur Windows. Écris / partout, tu auras moins de surprises.
Quand tu tapes cd images, le shell colle images au bout de ton dossier courant et regarde si ça existe. Si tu es dans ~/projets/mon-site, il cherche ~/projets/mon-site/images. Si tu es dans ~, il cherche ~/images — qui n'existe probablement pas, d'où l'erreur « no such file or directory ».
Le chemin relatif est donc une promesse qui dépend de l'endroit où tu es. C'est pratique (court à taper) et piégeux (le même chemin marche ou pas selon le dossier courant). Réflexe : pwd avant de taper un chemin relatif quand tu doutes.
Les chemins avec .. s'enchaînent : ../../images = « remonte deux fois, puis entre dans images ». Tu verras beaucoup ça dans le code (import x from '../../lib/utils').
Tu es dans ~/projets/mon-site/styles. Où mènent ces commandes ?
| Commande | Résultat |
|---|---|
| cd .. | ~/projets/mon-site |
| cd ../images | ~/projets/mon-site/images |
| cd ../../autre-site | ~/projets/autre-site (s'il existe) |
| cd ~ ou cd tout seul | ~ |
| cd /tmp | /tmp (absolu : peu importe d'où tu pars) |
| cd images | erreur : il n'y a pas de dossier images dans styles |
Reproduis exactement ceci dans le terminal d'entraînement, en lisant le chemin affiché dans la barre après chaque cd :
cd ~
mkdir -p projets/mon-site/styles
cd projets/mon-site/styles
pwd
cd ..
pwd
cd ../..
pwd
cd /home/student/projets/mon-site
pwdClaude Code manipule des chemins en permanence : « Read src/components/Header.tsx », « Edit styles/style.css ». Ce sont des chemins relatifs à l'espace de travail (le dossier où tu as lancé claude). Si tu lis ces chemins avec aisance, tu sais instantanément quel fichier il touche et tu peux répondre : « non, pas celui-là, celui dans pages/ ».
Erreurs courantes
no such file or directory (alors que le dossier existe !)
Il existe, mais pas à partir d’où tu es : tu as tapé un chemin relatif depuis le mauvais dossier.
pwd, puis ls, puis reconstruis le chemin. Ou utilise un chemin absolu (~/… ou /…).
Sur Windows, une commande échoue avec un chemin contenant des \
Dans certains contextes (JSON, JavaScript), l’antislash est un caractère d’échappement.
Utilise / partout, ou double les antislashs (C:\\Users) dans les fichiers de configuration.
À retenir
- Absolu = depuis la racine (/…, C:\…), vrai partout. Relatif = depuis ici, vrai seulement d’ici.
- . ici, .. parent, ~ chez moi. cd .. est la commande que tu taperas le plus.
- Doute → pwd. Toujours.
- Écris / comme séparateur, même sur Windows.