/ etc / path in OS X und anderen Unices

8

Wird /etc/pathsvon jeder Shell gelesen , die ich unter OS X ausführe? Wenn ich beispielsweise zsh verwende, wird es /etc/pathzum Auffüllen analysiert $PATH?

Was genau ist die Reihenfolge, in der OS X zum Auffüllen folgt $PATH? Macht es das anders als andere Unices?

Josh
quelle
Ja, anscheinend wird eine Datei namens /etc/path:) verwendet. Dies ist keine Standard * nix-Sache, daher wird diese Datei wahrscheinlich von einer der Standarddateien aufgerufen. Versuchen Sie, grep path /etc/bash.bashrc /etc/profile /etc/zsh/*dass die anrufende Leitung zurückgegeben wird /etc/path.
Terdon

Antworten:

10

Die OSX-Entwickler haben ihre eigene Methode zum Einrichten von $ PATH implementiert, die sich meines Wissens von allen anderen Unices unterscheidet. Sie verwenden ein Programm namens, path_helperdas /etc/pathsdie Dateien liest und die /etc/path.dStandardeinstellungen des Benutzers $PATHentsprechend ändert .

Nach diesem , der $PATHwird nur auf diese Weise für Login - Shells. Dies ist wahrscheinlich der Grund, warum iTerminal standardmäßig Login-Shells startet (ich habe mich immer gefragt, warum sie das gewählt haben).

Laut der gleichen Quelle path_helperwird von ausgeführt /etc/profileund /etc/csh.loginwas sich auswirken sollte

  • bash Login-Shells
  • csh Login-Shells
  • zshLogin Shells (sollte lesen /etc/profile)
  • Alle anderen Shells sind die Quelle, /etc/profiledie die meisten Login-Shells sein sollten.
terdon
quelle