Leçon 15 : variables d'environnement — $PATH, export, .bashrc
Tu as exécuté node --version sur web-01 et obtenu 'command not found'. node est installé dans /opt/node/bin — mais le shell ne sait pas qu'il faut y chercher. echo $PATH montre la liste des répertoires où le shell cherche les commandes. export PATH=$PATH:/opt/node/bin ajoute ce qui manque — ça fonct
$PATH, c'est la liste des tiroirs que le shell ouvre en cherchant une commande. export ajoute un tiroir à la liste. .bashrc est le mot que le shell lit à chaque ouverture — c'est là qu'on conserve les changements permanents.
- variable d'environnement
- Une paire name=value que le shell détient et transmet aux processus qu'il lance. Par exemple : PATH, HOME, USER. On lit une valeur avec $NAME, et on les affiche toutes avec env.
- export
- Marque une variable comme 'environnementale' — c'est-à-dire que les processus enfants lancés par le shell la recevront. export VAR=value définit et exporte en une seule étape. Sans export, la variable existe seulement dans le shell actuel.
- $PATH
- Une liste de répertoires séparés par des deux-points où le shell cherche les commandes. Quand on exécute node, le shell parcourt chaque répertoire de PATH à la recherche d'un fichier nommé node. 'command not found' signifie qu'il n'a été trouvé dans aucun d'eux.
- ~/.bashrc
- Un fichier que le shell exécute automatiquement à chaque ouverture de session interactive. On y ajoute des lignes export pour conserver des variables de façon permanente. Après modification, source ~/.bashrc recharge le fichier dans la session actuelle.