Utilisez `/ etc / path` ou` / etc / paths.d` pour ajouter des éléments au CHEMIN dans macOS Sierra?

10

D'après ce que j'ai glané à divers endroits avec des discussions sur /usr/libexec/path_helperet tout, apparemment, la façon moderne d'ajouter des éléments à la variable d'environnement PATHdans macOS Sierra 10.12 est de:

  • Modifier le /etc/pathsfichier
  • Ajoutez le ou les fichiers à lire dans le /etc/paths.drépertoire.

Mes questions:

  • Quel est le plus casher sur macOS moderne?
  • Si le meilleur moyen ou le plus courant consiste à déposer des fichiers dans le paths.drépertoire, quels devraient être les noms et le contenu de ces fichiers? Des exemples?
  • J'utilise zshplutôt que bash. Cela fait-il une différence?
  • Ces deux options sont-elles uniques à macOS? Ou apparaissent-ils dans BSD ou d'autres systèmes de type Unix?
Basil Bourque
la source

Réponses:

10

Utilisez /etc/paths.d. La raison principale est que /etc/pathsces modifications seront et / ou remplacées par des mises à niveau du système. /etc/paths.d/les articles ne le seront pas. Les fichiers sont généralement nommés avec le motif index-source. Par exemple, 99-mypaths. Les chemins sont ajoutés dans l'ordre *. Il est beaucoup plus facile d'ajouter / supprimer simplement un fichier que d'en éditer un par programme de manière idempotente sans bogue.

La valeur par défaut csh.login, profileet zprofilesur macOS se charge tous path_helper.


* Commande probablement ASCII, mais peut-être commande LOCALE.

bahamat
la source