Wird /etc/paths
von jeder Shell gelesen , die ich unter OS X ausführe? Wenn ich beispielsweise zsh verwende, wird es /etc/path
zum 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?
/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
.Antworten:
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_helper
das/etc/paths
die Dateien liest und die/etc/path.d
Standardeinstellungen des Benutzers$PATH
entsprechend ändert .Nach diesem , der
$PATH
wird 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_helper
wird von ausgeführt/etc/profile
und/etc/csh.login
was sich auswirken solltebash
Login-Shellscsh
Login-Shellszsh
Login Shells (sollte lesen/etc/profile
)/etc/profile
die die meisten Login-Shells sein sollten.quelle