92 votes

Comment définir le PATH pour les applications lancées par le Finder ?

Les applications lancées via le Finder semblent ne pas respecter le PATH tel que défini dans .bash_profile . Ainsi, lorsque j'essaie d'exécuter du code à partir d'un IDE (Intellij), je n'ai plus accès aux programmes en . /usr/local/bin qui est normalement ajouté à mon chemin dans le Terminal.

Apparemment .MacOSX/environment.plist c'était la façon dont pour le faire, mais cela ne fonctionne plus dans Lion.

Comment puis-je définir le PATH pour les applications lancées par le Finder ?

1voto

Klas Mellbourn Points 715

Inspiré par la réponse de @brki j'ai écrit ce script. Il prend le contenu de /etc/paths et l'utilise pour reconstruire le chemin original (et /usr/local/bin ), puis ajoute ~/bin y /some/other à ce sujet.

if [ -f /etc/paths ]; then
  ETC_PATHS=$(while read line; do
    echo -n "${line}:"
  done < /etc/paths)
  PATH_OVERRIDE=${ETC_PATHS}${HOME}/bin:/some/other
  echo "overriding original path /usr/bin:/bin:/usr/sbin:/sbin with ${PATH_OVERRIDE} so that gpg and node will be on path for spotlight launched programs"
  sudo launchctl config user path $PATH_OVERRIDE
fi

J'ai vérifié que cela fonctionne sur MacOS Catalina 10.15.1.

-1voto

adampasz Points 101

Essayez de définir le chemin dans votre ~/.profile ou ~/.bash_profile ou ~/.zprofile (pour zsh). Cela a fonctionné pour moi avec VimR -- il ne lisait pas le PATH lorsqu'il était lancé depuis le dock, mais il fonctionnait lorsqu'il était lancé depuis le terminal. Au fait, je fonctionnais sous OSX 10.11.

Je n'ai pas une connaissance suffisante de la question pour vous donner une explication détaillée de son fonctionnement. Il existe de nombreuses explications en ligne sur les différents fichiers de configuration et leur rôle : https://stackoverflow.com/questions/415403/whats-the-difference-between-bashrc-bash-profile-and-environment

Voir également une discussion similaire ici : https://stackoverflow.com/questions/3344704/path-variable-not-properly-set-in-gvim-macvim-when-it-is-opened-from-the-finder/24542893#24542893

-3voto

user1814739 Points 97

Sous Mac OS X 10.8.4, Mountain Lion, l'environnement de chemin d'accès intègre les chemins d'accès répertoriés dans ce fichier :

/etc/paths

Vous pouvez modifier ce fichier en utilisant un outil de ligne de commande, tel que vim en utilisant la commande suivante :

sudo vim /etc/paths

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X