/ / Comment définir des variables d'environnement globales à l'aide du script shell .sh - python, shell, ubuntu, variables d'environnement

Comment définir des variables d'environnement globales à l'aide du script shell .sh - python, shell, ubuntu, variables d'environnement

j'ai un .sh fichier qui définit localement des variables d'environnement dans mon shell source my_env.sh.

#!/bin/sh
echo "Setting up local environment variables"
export MY_URL="http://domain.com"
echo "Done"

Cela ne définit que les variables pour cette session. Cela signifie que mes applications Python Celery et Supervisor qui s'exécutent sous une session différente ne peuvent pas y accéder. Je comprends que je peux les exécuter sous un utilisateur, mais je veux savoir si sous Ubuntu utilisant le même script shell si je peux définir les variables de manière à ce qu'elles soient globalement accessibles à toutes les applications, quels que soient les utilisateurs ou les sessions.

Réponses:

1 pour la réponse № 1

Selon Doc env variables Ubuntu le meilleur moyen serait

/ Etc / environment est un fichier approprié pour les paramètres de variable d'environnement qui affectent le système dans son ensemble (plutôt que seulement un utilisateur particulier)

En supposant que cela ne vous dérange pas de les configurer pour la machine entière.


2 pour la réponse № 2

exportez vos variables dans "/ etc / profile".

REMARQUE: cela le rendra global pour chaque session shell pour n'importe quel utilisateur. Si vous souhaitez définir cette variable pour chaque session pour un utilisateur spécifique, définissez-le dans cet utilisateur "s" ~ / .profile ".


0 pour la réponse № 3

Si vous utilisez bashrc ou zshrc, vous pouvez créer le fichier shell qui définit les variables d’environnement d’une session à l’autre ou charge précisément toutes les variables d’environnement de chaque session.

source location/shell-script-sets-env.sh

Le zshrc et le bashrc sont disponibles dans votre répertoire $ HOME. ou ~ / .zshrc et ~ / .bashrc. Le shell actuel peut être consulté via

echo $SHELL

Jettes un coup d'oeil à définissant env en permanence pour l'ajouter au profil.