Maison  >  Article  >  Opération et maintenance  >  Que sont les variables d'environnement sous Linux

Que sont les variables d'environnement sous Linux

青灯夜游
青灯夜游original
2021-11-30 17:08:269072parcourir

Sous Linux, les variables d'environnement font référence aux paramètres prédéfinis du système ; elles sont équivalentes à une variable globale, existent dans tous les shells, ont un héritage et peuvent stocker des informations sur la session shell et l'environnement de travail.

Que sont les variables d'environnement sous Linux

L'environnement d'exploitation de ce tutoriel : système linux5.9.8, ordinateur Dell G3.

1. Le concept de variables d'environnement

1.1 La signification des variables d'environnement

Les variables d'environnement font généralement référence à certains paramètres qui spécifient l'environnement d'exploitation dans le système d'exploitation, c'est-à-dire les paramètres prédéfinis du système. C'est l'équivalent d'un pointeur. Si vous souhaitez afficher la valeur d'une variable, vous devez ajouter "$".

Les variables d'environnement sont une fonctionnalité du shell bash et sont utilisées pour stocker des informations sur la session shell et l'environnement de travail. Permet aux données d'être stockées en mémoire afin qu'elles soient accessibles aux programmes et scripts exécutés sur le shell. Ces données peuvent être utilisées pour identifier les utilisateurs, les systèmes, les caractéristiques du shell et toute autre donnée qui doit être stockée.

1.2 Classification des variables d'environnement

1.2.1 Selon le champ d'action

Les variables sous Linux peuvent être divisées en variables d'environnement et variables locales :

1) Variables d'environnement : équivalentes aux variables globales Les variables existent dans tous les Shell et ont un héritage ;

2) Variables locales : équivalentes aux variables locales, n'existent que dans le Shell actuel. Les variables locales incluent des variables d'environnement et les variables non-environnementales n'ont pas d'héritage.

1.2.2 Selon le cycle de vie

1) Permanent : le fichier de configuration doit être modifié, la variable prend effet de manière permanente

2) Temporaire : Utilisez la définition d'export, elle deviendra invalide après la fermeture du Shell ; .

2. Comment les variables d'environnement sont organisées

Que sont les variables denvironnement sous Linux

Chaque programme a une table d'environnement est un tableau de pointeurs de caractères. Chaque pointeur pointe vers une variable commençant par '.

Cette commande spécifie d'afficher toutes les variables et valeurs d'environnement.

【Exemple】

Que sont les variables denvironnement sous Linux

4.3 set

Cette commande spécifie des variables locales.

【Exemple】

Que sont les variables denvironnement sous Linux

4.4 export

Cette commande spécifie la définition d'une nouvelle variable d'environnement.

[Exemple]

Que sont les variables denvironnement sous Linux

Remarque : Les variables d'environnement sont généralement représentées par des lettres anglaises majuscules et soulignées.

4.5 unset

Cette commande spécifie l'effacement des variables d'environnement.

【Exemple】

Que sont les variables denvironnement sous Linux

4.6 lecture seule

Cette commande est utilisée pour définir des variables d'environnement en lecture seule.

[Exemple]

Que sont les variables denvironnement sous Linux
Explication : Après avoir défini la variable d'environnement MY_ENV en mode lecture seule, elle ne peut être modifiée que lorsque l'utilisateur se déconnecte.

5. Fichier qui stocke les variables d'environnement

5.1 /etc/profile

La fonction de ce fichier est d'obtenir les variables d'environnement du système lorsque l'utilisateur se connecte, et de ne les obtenir qu'une seule fois.

5.2 /etc/bashrc

Après l'exécution du fichier /etc/profile, l'utilisateur lira le fichier s'il souhaite ouvrir le shell bash. Si vous souhaitez effectuer certaines opérations à chaque fois que vous ouvrez le shell bash, vous pouvez les définir dans ce fichier.

5.3 ~/.bash_profile

Chaque utilisateur peut utiliser ce fichier pour saisir des informations shell dédiées à son propre usage. Ce fichier n'est exécuté qu'une seule fois lorsque l'utilisateur se connecte. Par défaut, il définit certaines variables d'environnement et exécute le fichier .bashrc de l'utilisateur.

La modification de ce fichier par un seul utilisateur n’affectera que chaque connexion ultérieure au système. Par conséquent, vous pouvez définir ici des variables d'environnement spéciales ou des opérations spéciales pour un seul utilisateur, puis il obtiendra ces nouvelles variables d'environnement ou effectuera certaines opérations spéciales à chaque fois qu'il se connectera, mais uniquement lors de la connexion

5.4 ~/.bashrc

Ce fichier contient des informations bash spécifiques au shell bash d'une seule personne et est lu lors de la connexion et à chaque fois qu'un nouveau shell est ouvert.

La modification de ce fichier par un seul utilisateur affectera chaque fois qu'il se connectera au système et chaque fois qu'il ouvrira un nouveau bash. Par conséquent, vous pouvez définir ici des variables d'environnement spéciales ou des opérations spéciales pour un seul utilisateur. Ensuite, chaque fois qu'il se connectera au système ou ouvrira un nouveau bash, il obtiendra les variables d'environnement spéciales et les opérations spéciales correspondantes.

5.5 ~/.bash_logout

Exécutez ce fichier à chaque fois que vous quittez le système (quittez le shell bash).

6. Obtenez les variables d'environnement via le code

[Exemple 1]

Que sont les variables denvironnement sous Linux

Remarque : Le troisième paramètre sur la ligne de commande est l'adresse de la table d'environnement, qui est un pointeur de tableau de caractères.

Résultats d'exécution :

Que sont les variables denvironnement sous Linux

[Exemple 2] Obtenez

Que sont les variables denvironnement sous Linux

via la variable tierce environ Résultats d'exécution :

Que sont les variables denvironnement sous Linux

Remarque : La variable globale environ définie dans la libc pointe vers la variable d'environnement. table, car environ n'est inclus dans aucun fichier d'en-tête, utilisez donc la déclaration extern lorsque vous l'utilisez.

7. Obtenez ou définissez des variables d'environnement via des appels système

Utilisez généralement les fonctions getenv et putenv pour accéder à des variables d'environnement spécifiques au lieu des variables d'environnement. Toutefois, si vous souhaitez afficher l'ensemble de l'environnement, vous devez utiliser le pointeur environ.

【Exemple 1】

Que sont les variables denvironnement sous Linux

Résultats d'exécution :

Que sont les variables denvironnement sous Linux

【Exemple 2】

Que sont les variables denvironnement sous Linux

Résultats de l'opération :

Que sont les variables denvironnement sous Linux

Explication : "export MY_ENV=Love" exporte des variables d'environnement, qui peuvent être héritées par les sous-programmes tandis que "MY_ENV=Love" exporte des variables ordinaires et n'a pas d'héritage (similaire au getenv ; fonction Idem).

Recommandations associées : "Tutoriel vidéo Linux"

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn