/ etc / chemins sous OS X et autres Unices

8

Est /etc/pathslu par chaque shell que j'exécute sous OS X? Par exemple, si j'utilise zsh, sera-t-il analysé /etc/pathpour remplir $PATH?

Quelle est exactement la séquence que OS X suit pour remplir $PATH? Le fait-il différemment des autres Unices?

Josh
la source
Oui, apparemment, il utilise un fichier appelé /etc/path:). Ce n'est pas une chose standard * nix, donc ce fichier est probablement appelé à partir de l'un des fichiers standard. Essayez grep path /etc/bash.bashrc /etc/profile /etc/zsh/*cela devrait renvoyer la ligne qui appelle /etc/path.
terdon

Réponses:

10

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_helperqui lira /etc/pathsles fichiers /etc/path.det modifiera la valeur par défaut de l'utilisateur en $PATHconséquence.

Selon cela , le $PATHn'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_helperest exécuté à partir de /etc/profileet /etc/csh.loginqui devrait affecter

  • bash coquilles de connexion
  • csh coquilles de connexion
  • zshcoquilles de connexion (à lire /etc/profile)
  • tous les autres shells dont la source /etc/profiledevrait être la plupart des shells de connexion.
terdon
la source