/etc/paths
ist Teil dessen, was zum Einrichten von $PATH
Shell-Prozessen verwendet wird. Wenn Sie ein neues Terminalfenster öffnen, wird es gestartet bash
, in dem mehrere Startskripte ausgeführt werden: /etc/profile
AND ~/.bash_profile
OR (falls nicht vorhanden) ~/.bash_login
OR (falls nicht vorhanden) ~/.profile
. Diese Skripte richten die Shell-Umgebung ein, einschließlich $PATH
.
Eines der Dinge /etc/profile
ist das Ausführen /usr/libexec/path_helper
, das /etc/paths
alle Dateien liest und /etc/paths.d
ihren Inhalt hinzufügt $PATH
. Dies ist jedoch nur ein Ausgangspunkt; Ihr eigenes Startskript (falls vorhanden) kann es ergänzen $PATH
, bearbeiten, vollständig ersetzen usw.
Es sieht für mich so aus, als würde Ihr Startskript (und / oder die Dinge, die es ausführt) dem Basissatz, aus dem es stammt, eine Reihe von Einträgen hinzufügen /etc/paths
. "Users / myusername / .node_modules_global / bin: /Users/mac/.node_modules_global/bin:" wird am Anfang von hinzugefügt $PATH
(dh diese Verzeichnisse werden zuerst durchsucht) und ": / Users / mac / Library / Android / sdk / platform-tools: / platform-tools "wird am Ende hinzugefügt. Wenn Sie genau wissen möchten, was sie hinzufügt, müssen Sie sich Ihr Startskript ansehen.
Übrigens gilt dieser Vorgang zum Einrichten $PATH
nur für Bash-Login-Shells. Alles, was von einer Bash-Shell ausgeführt wird, wird davon erben $PATH
, also haben Sie wahrscheinlich im Wesentlichen dasselbe. Bash-Nicht-Login-Shells folgen einem etwas anderen Einrichtungsprozess. Andere Shells und Dinge, die überhaupt nicht von einer Shell aus gestartet wurden (z. B. Cron-Jobs), können völlig anders sein $PATHs
.
/etc/paths
in meinem, aber ich renne10.4.11
und die Dinge haben sich wahrscheinlich seitdem geändert