0 Votes

Modifications pour le document Variables

Modifié par john le 2025/05/25 11:16

Depuis la version 1.1
modifié par john
sur 2025/05/24 21:16
Commentaire de modification : Il n'y a aucun commentaire pour cette version
À la version 1.10
modifié par john
sur 2025/05/25 00:06
Commentaire de modification : Update document after refactoring.

Résumé

Détails

Propriétés de la Page
Parent
... ... @@ -1,1 +1,1 @@
1 -Wiki Batcave John.TutosLinux.WebHome
1 +Wiki Batcave John.Main.TutosLinux.WebHome
Contenu
... ... @@ -3,24 +3,27 @@
3 3  {{toc/}}
4 4  
5 5  == Présentation ==
6 +
6 6  Les **variables d’environnement** sont des paires `nom=valeur` utilisées par le shell et les applications.
7 7  Elles stockent des **informations de configuration**, comme la langue, le nom d’utilisateur, le chemin de recherche des commandes, etc.
8 8  
9 9  Elles sont visibles et modifiables par l’utilisateur courant, et peuvent être temporaires ou permanentes.
10 10  
11 ----
12 +----
12 12  
13 13  == Quelques variables courantes ==
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 |
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 |\\
19 19  | `$SHELL` | Shell utilisé (souvent `/bin/bash`) |
20 20  
21 ----
23 +----
22 22  
23 23  == Afficher les variables existantes ==
26 +
24 24  {{code language="bash"}}
25 25  printenv
26 26  # ou
... ... @@ -29,9 +29,10 @@
29 29  echo $HOME
30 30  {{/code}}
31 31  
32 ----
35 +----
33 33  
34 34  == Définir une variable temporaire ==
38 +
35 35  {{code language="bash"}}
36 36  NOM=John
37 37  echo $NOM
... ... @@ -39,9 +39,10 @@
39 39  
40 40  Cela ne sera valable **que pour le shell courant**.
41 41  
42 ----
46 +----
43 43  
44 44  == Rendre une variable accessible à un script ou un sous-processus ==
49 +
45 45  Il faut l’**exporter** :
46 46  
47 47  {{code language="bash"}}
... ... @@ -51,27 +51,26 @@
51 51  
52 52  Le script pourra utiliser `$NOM`.
53 53  
54 ----
59 +----
55 55  
56 56  == Définir une variable de façon permanente ==
62 +
57 57  Ajoute la ligne dans l’un de ces fichiers :
58 -* `~/.bashrc` → pour les shells interactifs
59 -* `~/.profile` ou `~/.bash_profile` → à la connexion
60 60  
65 +* `/.bashrc` → pour les shells interactifs
66 +* `/.profile` ou `/.bash_profile` → à la connexion
67 +
61 61  Exemple :
62 -{{code language="bash"}}
63 -export EDITOR=nano
64 -export PATH=$PATH:$HOME/bin
65 -{{/code}}
69 +{{code language="bash"}}export EDITOR=nano
70 +export PATH=$PATH:$HOME/bin{{/code}}
66 66  
67 67  Puis recharge avec :
68 -{{code language="bash"}}
69 -source ~/.bashrc
70 -{{/code}}
73 +{{code language="bash"}}source ~/.bashrc{{/code}}
71 71  
72 ----
75 +----
73 73  
74 74  == Astuce : tester si une variable existe ==
78 +
75 75  {{code language="bash"}}
76 76  if [ -z "$MON_VAR" ]; then
77 77   echo "MON_VAR n'est pas définie"
... ... @@ -78,15 +78,16 @@
78 78  fi
79 79  {{/code}}
80 80  
81 ----
85 +----
82 82  
83 83  == Bonnes pratiques ==
88 +
84 84  * Utiliser **des majuscules** pour les noms (convention POSIX)
85 85  * Éviter les noms de variables trop courts (`T`, `X`, `D`) qui pourraient entrer en conflit
86 86  * Toujours entourer les variables entre **guillemets** (`"$VAR"`) dans les scripts pour éviter les bugs avec des espaces
87 87  
88 ----
93 +----
89 89  
90 90  == Liens internes ==
91 -* [[Retour à la section Tutos Linux>>Wiki Batcave John.TutosLinux]]
92 92  
97 +* [[Retour à la section Tutos Linux>>Main.TutosLinux.WebHome]]