J'ai vu d'autres personnes sur Internet également avoir ce problème, mais les solutions n'ont pas été concluantes. Je voulais donc le rappeler à nouveau.
Selon cette page du wiki Ubuntu: https://help.ubuntu.com/community/EnvironmentVariables La méthode recommandée pour définir les variables d'environnement de la session est de modifier ~/.pam_environment.
Voici ce que mon objectif est:
Voici ce que j'ai fait. Le fichier ~/.pam_environment n’existait pas, je l’ai donc créé et y ai ajouté les lignes suivantes:
Android_HOME=${HOME}/Android/Sdk
PATH DEFAULT=${PATH}:${Android_HOME}/tools:${Android_HOME}/platform-tools
Déconnecté et reconnecté.
Le résultat n'est pas attendu. J'ai ouvert le terminal et répercuté $ Android_HOME et c'est ce que j'ai obtenu:
${HOME}/Android/Sdk
On dirait que le ${HOME}
n'est pas remplacé par le chemin de mon dossier personnel. Pourquoi est-ce si?
Observez cd
- ing dans $ Android_HOME (Android/Sdk existe réellement dans mon dossier personnel):
anvar@crazymachine:~$ cd $Android_HOME
bash: cd: ${HOME}/Android/Sdk: No such file or directory
Échoignant également $ PATH m'a donné ceci:
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:${HOME}/Android/Sdk/tools:${HOME}/Android/Sdk/platform-tools
Pourquoi les variables ne sont-elles pas substituées avec leurs valeurs comme il serait logique d'assumer, en particulier lorsque l'exemple du site susmentionné donnait une impression telle que des variables peuvent être utilisées dans les valeurs?
Quelle est la bonne façon de définir des variables d'environnement à la session auxquelles les programmes à interface graphique ont également accès?
L'exemple de le wiki , pour la définition de variables de session via ~/.pam_environment
, indique dans une note:
La syntaxe utilisée pour modifier PATH, qui diffère de celle des fichiers de script, est nécessaire pour que le développement des variables fonctionne.
Par conséquent, votre première ligne devrait ressembler à ceci:
Android_HOME DEFAULT=${HOME}/Android/Sdk
Deux suggestions:
1er - la forme de vos déclarations environnementales devrait être:
Android_HOME=$HOME/Android/Sdk
PATH=$PATH:$Android_HOME/tools:$Android_HOME/platform-tools
deuxièmement, placez vos nouvelles instructions d'environnement dans ~/.profile