web-dev-qa-db-fra.com

Définition de la variable d'environnement PATH dans OSX de manière permanente

J'ai lu plusieurs réponses sur la manière de définir les variables d'environnement sur OSX de manière permanente.

D'abord, j'ai essayé ceci, Comment définir de manière permanente $ PATH sur Linux/Unix? mais j'avais un message d'erreur disant no such file and directory, alors j'ai pensé que je pouvais essayer ~/.bash_profile au lieu de ~/.profile mais cela n'a pas fonctionné.

Deuxièmement, j’ai trouvé cette solution Comment définir le $ PATH comme utilisé par les applications dans os x , qui conseille d’apporter des modifications dans

~/.MacOSX/environment.plist

mais encore une fois j'avais no such file and directory erreur.

J'ai besoin d'un moyen de définir ces variables de telle sorte qu'il ne soit pas nécessaire de les définir encore et encore à chaque fois que j'ouvre une nouvelle session de terminal.

116
patti_jane

Vous devez l'ajouter à /etc/paths.

Référence (qui fonctionne pour moi): Here

215
Nitish

J'ai constaté que certains fichiers peuvent affecter la variable $PATH dans macOS (fonctionne pour moi, 10.11 El Capitan), répertoriés ci-dessous:

  1. Comme le disait la réponse la plus élevée, vi /etc/paths, ce qui est recommandé de mon point de vue.

  2. N'oubliez pas non plus que le répertoire /etc/paths.d, qui contient des fichiers, peut affecter la variable $PATH, définissez les chemins git et mono-command dans mon cas. Vous pouvez ls -l /etc/paths.d pour répertorier les éléments et rm /etc/paths.d/path_you_dislike pour supprimer des éléments.

  3. Si vous utilisez un environnement "bash" (le Terminal.app par défaut, par défaut), vous devriez extraire ~/.bash_profile ou ~/.bashrc. Ce fichier n'existe peut-être pas encore, mais ces deux fichiers ont des effets sur le $PATH.

  4. Si vous utilisez un environnement "zsh" ( Oh-My-Zsh , par exemple), vous devriez extraire ~./zshrc au lieu de ~/.bash*.

Et n'oubliez pas de redémarrer toutes les fenêtres du terminal, puis echo $PATH. La chaîne $PATH sera PATH_SET_IN_3&4:PATH_SET_IN_1:PATH_SET_IN_2.

Remarquez que les deux premières manières (/etc/paths et /etc/path.d) se trouvent dans le répertoire / qui affectera tous les comptes de votre ordinateur, tandis que les deux dernières façons (~/.bash* ou ~/.zsh*) se trouve dans le répertoire ~/ (alias, /Users/yourusername/) qui n’affectera que les paramètres de votre compte.

En savoir plus: Mac OS X: définir/modifier la variable $ PATH - nixCraft

23
iplus26

Vous pouvez aussi ajouter ceci

if [ -f ~/.bashrc ]; then
    . ~/.bashrc
fi

à ~/.bash_profile, puis créez ~/.bashrc où vous pouvez simplement ajouter d'autres chemins d'accès à PATH. Un exemple avec .

export PATH=$PATH:.
11
omoman

Vous pouvez ouvrir l’un des fichiers suivants:

/etc/profile
~/.bash_profile
~/.bash_login   (if .bash_profile does not exist)
~/.profile      (if .bash_login does not exist)

Et ajouter:

export PATH="$PATH:your/new/path/here"
4
Tiago

Pour ajouter un nouveau chemin à la variable d’environnement PATH dans MacOS, il suffit de créer un nouveau fichier dans le répertoire /etc/paths.d et d’ajouter le chemin d’écriture à définir dans le fichier. Redémarrez le terminal. Vous pouvez vérifier avec echo $PATH à l'invite pour confirmer si le chemin a été ajouté à la variable d'environnement.

Par exemple: pour ajouter un nouveau chemin /usr/local/sbin à la variable PATH:

cd /etc/paths.d
Sudo vi newfile

Ajoutez le chemin à la newfile et enregistrez-le.

Redémarrez le terminal et tapez echo $PATH pour confirmer

4
Rishabh Mishra

j'ai essayé la première méthode et traversé la page de référence, bien définir le chemin d'accès.

1
IgnitedMind