Comment définir des variables d'environnement sous Linux

Linux en vedette

Au fur et à mesure que vous personnalisez et configurez votre système Linux, vous devez savoir comment définir les variables d’environnement. Laissez-nous vous guider.

Si vous utilisez un PC, le système d’exploitation doit savoir où localiser certains fichiers ou comment présenter l’heure et la date. Windows le fait généralement à l’aide des fichiers de configuration et du registre.

Sur les systèmes basés sur Unix comme Linux, ceci est défini en utilisant Variables d’environnement. Savoir comment définir des variables d’environnement sous Linux peut être d’une grande aide, et ce guide vous aidera à démarrer.

Variables d’environnement et de shell sous Linux

Il existe deux types de ces variables—environnement et coquille. La variable d’environnement affecte le système dans son ensemble, que ce soit sur la ligne de commande ou dans une interface graphique. Ces variables stockent des éléments tels que l’éditeur de texte ou le navigateur Web par défaut, le chemin d’accès aux fichiers exécutables ou les paramètres régionaux du système et la disposition du clavier.

Une variable shell, en revanche, a une portée plus limitée. Il n’est pas persistant et ne s’applique qu’à l’instance actuelle du shell (ou de la ligne de commande). Les différents environnements shell, comme zsh et frapperont leur propre ensemble de variables shell internes.

Ce que les deux ont en commun, c’est le format. Chaque variable d’environnement et de shell suivra l’un de ces formats de base :

KEY=value
KEY="Some value including spaces"
KEY=value1:value2

Gardez à l’esprit les exigences suivantes lorsque vous travaillez avec des variables d’environnement et de shell :

  • Le cas compte. Les variables d’environnement doivent toujours avoir des noms en majuscules.
  • N’incluez jamais d’espace entre le nom de la variable, le = symbole et la valeur.
  • Lorsqu’une variable a plusieurs valeurs, elles doivent être séparées par deux-points (:) personnage.

Comment lister et définir des variables d’environnement sous Linux

Plusieurs commandes sont disponibles pour répertorier, définir et supprimer les variables d’environnement sous Linux. Ceux-ci inclus:

  • env: Cette commande vous permettra d’exécuter un autre programme dans un environnement personnalisé sans modifier celui en cours. Sans aucun argument, il imprime une liste des variables d’environnement actuelles.
  • printenv: Si vous voulez imprimer tout ou une variable d’environnement spécifique, printenv est bien utile.
  • ensemble: Cette commande est utilisée pour activer ou désactiver des variables shell. Si vous l’exécutez sans argument, ensemble imprimera une liste de toutes les variables, y compris les variables d’environnement et du shell ainsi que les fonctions du shell.
  • non défini: La commande pour supprimer les variables du shell et de l’environnement.
  • exportation: Il s’agit de la commande que vous utiliserez le plus souvent pour définir des variables d’environnement.

Travailler avec des variables d’environnement

Avant de modifier les variables d’environnement, vous devez toujours vérifier vos configurations actuelles. En utilisant printenvvous pouvez découvrir les variables d’environnement et de shell que votre système Linux possède déjà.

Pour voir toutes les variables d’environnement actuelles, exécutez le printenv commande sans aucun argument. Attention, la sortie sera assez longue.

Par exemple, pour afficher la valeur du DOMICILE variable, vous utiliseriez ce qui suit.

jeff@UbuntuVM:~$ printenv HOME
/home/jeff
jeff@UbuntuVM:~$

Vous pouvez également fournir plusieurs arguments pour printenvpour vérifier plusieurs variables à la fois.

jeff@UbuntuVM:~/documents$ printenv LANG PWD
en_US
/home/jeff/documents
jeff@UbuntuVM:~/documents$

Certaines des variables d’environnement les plus courantes que vous rencontrerez sont :

  • UTILISATEUR: L’utilisateur actuellement connecté.
  • DOMICILE: Le répertoire personnel de l’utilisateur actuel.
  • ÉDITEUR: L’éditeur de texte par défaut utilisé si vous tapez Éditer à la ligne de commande.
  • COQUILLE: Le chemin du shell de l’utilisateur actuel, comme frapper ou zsh.
  • CHEMIN: Une liste de répertoires à rechercher lorsque vous exécutez une commande. Linux recherche ces répertoires dans l’ordre spécifié, en utilisant la première correspondance qu’il trouve.

Modification ou définition de nouvelles variables d’environnement

Il y a deux étapes que vous devrez suivre pour définir une variable d’environnement sous Linux. Tout d’abord, vous le définissez comme une variable shell. Ensuite, vous l’exporterez en tant que variable d’environnement. Par exemple, cette commande définit une variable nommée MY_VAR et le définit comme sensationnel.

jeff@UbuntuVM:~$ MY_VAR='groovy'
jeff@UbuntuVM:~$ 

Vous ne verrez aucune confirmation de cela, mais vous pouvez vérifier s’il a été réellement défini.

jeff@UbuntuVM:~$ echo $MY_VAR
groovy
jeff@UbuntuVM:~$ 

Lancement de la commande printenv MY_VAR à ce stade, ne devrait renvoyer aucune sortie, indiquant qu’il n’y a pas de variable d’environnement nommée MY_VAR. Pour changer cela, vous utiliseriez le exportation commander.

jeff@UbuntuVM:~$ export MY_VAR
jeff@UbuntuVM:~$ 

À présent, printenv MY_VAR devrait avoir une sortie différente.

jeff@UbuntuVM:~$ printenv MY_VAR
groovy
jeff@UbuntuVM:~$ 

Bien sûr, il existe un autre moyen d’y parvenir. Vous pouvez définir des variables d’environnement sur une seule ligne à l’aide d’une commande comme celle-ci :

jeff@UbuntuVM:~$ export MY_NEW_VAR="Another groovy variable"
jeff@UbuntuVM:~$ 

Une chose à noter est que les variables d’environnement définies de cette manière ne s’appliquent qu’à la session en cours. Une fois que vous vous déconnectez ou ouvrez un nouveau shell, les variables d’environnement sont perdues.

Définition des variables d’environnement pour qu’elles soient persistantes sous Linux

Si vous savez que vous devrez utiliser des variables d’environnement persistantes entre les connexions, vous devrez les définir dans vos fichiers de configuration bash. Ceux-ci se trouvent dans quelques endroits.

  • /etc/environnement: Ce fichier définit des variables d’environnement globales à l’échelle du système qui s’appliquent à tous les shells et à l’environnement graphique. Ceux-ci sont définis au format suivant :
    FOO=bar
    VAR_TEST=“Test Variable”
    
  • /etc/profil: Ceux-ci sont chargés chaque fois qu’un shell de connexion bash est entré. Utilisez le exportation commande de les déclarer.
    export JAVA_HOME=“/path/to/java/home”
    
  • Fichiers de configuration du shell définis par l’utilisateur : chaque utilisateur peut avoir ses propres fichiers de configuration pour le shell. Pour frapperle fichier se trouve à ~/.bashrc. Déclarez les variables ici de la même manière que vous le feriez dans /etc/profil.
    export PATH=“$HOME/bin:$PATH”
    

Si vous avez défini de nouvelles variables d’environnement et souhaitez les charger rapidement dans votre session shell actuelle, vous n’avez pas besoin de vous déconnecter. Utilisez simplement le la source commander.

jeff@UbuntuVM:~$ source ~/.bashrc
jeff@UbuntuVM:~$ 

Configuration des variables shell

Vous n’aurez peut-être pas besoin de les déclarer aussi souvent que les variables d’environnement, mais le ensemble La commande est utilisée pour définir et répertorier toutes les variables du shell. Si vous voulez tous les lister, lancez simplement la commande sans aucun argument.

jeff@UbuntuVM:~$ set

sortie typique de la commande set

La sortie sera probablement longue de plusieurs pages. Pour le rendre plus lisible, faites-le passer par le moins commander:

jeff@UbuntuVM:~$ set | less

sortie typique de la commande set transmise par less

Si vous souhaitez imprimer une variable shell spécifique, vous pouvez également utiliser le écho commander.

jeff@UbuntuVM:~$ echo $BASH_VERSION
5.0.17(1)-release
jeff@UbuntuVM:~$ 

Définir une variable shell est aussi simple que de taper le nom de la variable, le = symbole et la valeur.

jeff@UbuntuVM:~$ MY_VAR="groovy"
jeff@UbuntuVM:~$ 

Administrez judicieusement votre bureau ou serveur Linux

La définition de variables de shell et d’environnement peut être une fonctionnalité puissante sur un PC ou un serveur Linux, mais soyez prudent quant à la manière dont vous vous y prenez. Vérifiez toujours ce que vous tapez avant de vous y engager. Lors de la modification de fichiers comme /etc/profilvous pouvez d’abord créer un fichier de sauvegarde.

Pour les modifications au niveau de l’utilisateur, il est utile de savoir quels fichiers de configuration sont utilisés, ainsi que de savoir où les trouver. Si vous avez du mal à localiser un fichier particulier, Linux inclut des outils puissants pour rechercher vos disques durs.

Enregistrer un commentaire

Plus récente Plus ancienne