0 Votes

Modifications pour le document Variables d’environnement

Modifié par john le 2026/09/20 20:04

Depuis la version 2.1
modifié par john
sur 2025/05/25 00:29
Commentaire de modification : Il n'y a aucun commentaire pour cette version
À la version 3.1
modifié par john
sur 2026/09/20 19:51
Commentaire de modification : Il n'y a aucun commentaire pour cette version

Résumé

Détails

Propriétés de la Page
Contenu
... ... @@ -1,26 +3,24 @@
1 -= Les variables d’environnement sous Linux =
2 -
3 3  {{toc/}}
4 4  
5 5  == Présentation ==
6 6  
7 -Les **variables d’environnement** sont des paires `nom=valeur` utilisées par le shell et les applications.
5 +Les **variables d’environnement** sont des paires ##nom=valeur## utilisées par le shell et les applications.
8 8  Elles stockent des **informations de configuration**, comme la langue, le nom d’utilisateur, le chemin de recherche des commandes, etc.
9 9  
10 10  Elles sont visibles et modifiables par l’utilisateur courant, et peuvent être temporaires ou permanentes.
11 11  
12 ------
10 +----
13 13  
14 14  == Quelques variables courantes ==
15 15  
16 -|= Variable |= Description |
17 -| `$USER` | Nom de l’utilisateur connecté |
18 -| `$HOME` | Répertoire personnel |
19 -| `$PATH` | Liste des dossiers contenant les commandes |
20 -| `$LANG` | Langue et encodage utilisés |
21 -| `$SHELL` | Shell utilisé (souvent `/bin/bash`) |
14 +|=Variable|=Description
15 +|##$USER##|Nom de l’utilisateur connecté
16 +|##$HOME##|Répertoire personnel
17 +|##$PATH##|Liste des dossiers contenant les commandes
18 +|##$LANG##|Langue et encodage utilisés
19 +|##$SHELL##|Shell utilisé (souvent ##/bin/bash##)
22 22  
23 ------
21 +----
24 24  
25 25  == Afficher les variables existantes ==
26 26  
... ... @@ -29,21 +29,21 @@
29 29  # ou
30 30  env
31 31  # ou pour une variable spécifique :
32 -echo $HOME
30 +echo "$HOME"
33 33  {{/code}}
34 34  
35 ------
33 +----
36 36  
37 37  == Définir une variable temporaire ==
38 38  
39 39  {{code language="bash"}}
40 40  NOM=John
41 -echo $NOM
39 +echo "$NOM"
42 42  {{/code}}
43 43  
44 44  Cela ne sera valable **que pour le shell courant**.
45 45  
46 ------
44 +----
47 47  
48 48  == Rendre une variable accessible à un script ou un sous-processus ==
49 49  
... ... @@ -54,26 +54,32 @@
54 54  ./mon_script.sh
55 55  {{/code}}
56 56  
57 -Le script pourra utiliser `$NOM`.
55 +Le script pourra utiliser ##$NOM##.
58 58  
59 ------
57 +----
60 60  
61 61  == Définir une variable de façon permanente ==
62 62  
63 -Ajoute la ligne dans l’un de ces fichiers :
61 +Ajouter la ligne dans l’un de ces fichiers :
64 64  
65 -* `/.bashrc` → pour les shells interactifs
66 -* `/.profile` ou `/.bash_profile` → à la connexion
63 +* ##~~/.bashrc## → pour les shells interactifs
64 +* ##~~/.profile## ou ##~~/.bash_profile## → à la connexion
67 67  
68 68  Exemple :
69 -{{code language="bash"}}export EDITOR=nano
70 -export PATH=$PATH:$HOME/bin{{/code}}
71 71  
72 -Puis recharge avec :
73 -{{code language="bash"}}source ~/.bashrc{{/code}}
68 +{{code language="bash"}}
69 +export EDITOR=nano
70 +export PATH="$PATH:$HOME/bin"
71 +{{/code}}
74 74  
75 ------
73 +Puis recharger avec :
76 76  
75 +{{code language="bash"}}
76 +source ~~/.bashrc
77 +{{/code}}
78 +
79 +----
80 +
77 77  == Astuce : tester si une variable existe ==
78 78  
79 79  {{code language="bash"}}
... ... @@ -82,17 +82,24 @@
82 82  fi
83 83  {{/code}}
84 84  
85 ------
89 +En mode strict (##set -u##), une variable non définie interrompt le script. Prévoir une valeur par défaut :
86 86  
91 +{{code language="bash"}}
92 +echo "${MON_VAR:-valeur_par_defaut}"
93 +{{/code}}
94 +
95 +----
96 +
87 87  == Bonnes pratiques ==
88 88  
89 89  * Utiliser **des majuscules** pour les noms (convention POSIX)
90 -* Éviter les noms de variables trop courts (`T`, `X`, `D`) qui pourraient entrer en conflit
91 -* Toujours entourer les variables entre **guillemets** (`"$VAR"`) dans les scripts pour éviter les bugs avec des espaces
100 +* Éviter les noms trop courts (##T##, ##X##, ##D##) qui pourraient entrer en conflit
101 +* Toujours entourer les variables de **guillemets** (##"$VAR"##) dans les scripts pour éviter les bugs avec des espaces
102 +* Ne jamais mettre de mot de passe ni de jeton dans une variable exportée : elle est lisible par tous les processus de la session. Préférer un fichier réservé à root, chargé avec ##.## au moment voulu
92 92  
93 ------
104 +----
94 94  
95 95  == Liens internes ==
96 96  
97 -* [[Retour à la section Tutos Linux>>Wiki Batcave John.TutosLinux]]
108 +* [[Retour à la section Tutos Linux>>doc:Wiki Batcave John.TutosLinux.WebHome]]
98 98  * [[Retour à l’accueil>>doc:Wiki Batcave John.WebHome]]