Est /etc/paths
lu par chaque shell que j'exécute sous OS X? Par exemple, si j'utilise zsh, sera-t-il analysé /etc/path
pour remplir $PATH
?
Quelle est exactement la séquence que OS X suit pour remplir $PATH
? Le fait-il différemment des autres Unices?
/etc/path
:). Ce n'est pas une chose standard * nix, donc ce fichier est probablement appelé à partir de l'un des fichiers standard. Essayezgrep path /etc/bash.bashrc /etc/profile /etc/zsh/*
cela devrait renvoyer la ligne qui appelle/etc/path
.Réponses:
Les développeurs OSX ont implémenté leur propre façon de configurer le $ PATH qui est différent de tous les autres Unices pour autant que je sache. Ils utilisent un programme appelé
path_helper
qui lira/etc/paths
les fichiers/etc/path.d
et modifiera la valeur par défaut de l'utilisateur en$PATH
conséquence.Selon cela , le
$PATH
n'est défini de cette façon que pour les shells de connexion. C'est probablement pourquoi iTerminal démarre les shells de connexion par défaut (je me suis toujours demandé pourquoi ils avaient choisi cela).Selon la même source,
path_helper
est exécuté à partir de/etc/profile
et/etc/csh.login
qui devrait affecterbash
coquilles de connexioncsh
coquilles de connexionzsh
coquilles de connexion (à lire/etc/profile
)/etc/profile
devrait être la plupart des shells de connexion.la source