/etc/paths
является частью того, что используется для настройки $PATH
процессов оболочки. Когда вы открываете новое окно терминала, оно запускается bash
, в котором запускаются несколько сценариев запуска: /etc/profile
И ~/.bash_profile
ИЛИ (если оно не существует) ~/.bash_login
ИЛИ (если оно тоже не существует) ~/.profile
. Эти скрипты настраивают среду оболочки, в том числе $PATH
.
Одна из вещей /etc/profile
- это запустить /usr/libexec/path_helper
, который читает /etc/paths
и любые файлы /etc/paths.d
, и добавляет их содержимое $PATH
. Но это только отправная точка; Ваш собственный скрипт запуска (если таковой существует) может добавить $PATH
, отредактировать его, полностью заменить и т. д.
Мне кажется, что ваш стартовый скрипт (и / или вещи, которые он запускает) добавляет несколько записей в базовый набор, из которого он получает /etc/paths
. «Users / myusername / .node_modules_global / bin: /Users/mac/.node_modules_global/bin:» добавляется в начало $PATH
(означает, что эти каталоги будут искать в первую очередь), и «: / Users / mac / Library / Android / sdk / platform-tools: / platform-tools "добавляется в конце. Если вы хотите точно знать, что их добавляет, вам нужно взглянуть на сценарий запуска.
Кстати, этот процесс настройки $PATH
относится только к оболочкам bash "login". Все, что запускается оболочкой bash, будет наследоваться $PATH
от него, поэтому, вероятно, по сути, то же самое. Оболочки не-входа в bash следуют несколько иному процессу установки. Другие оболочки и вещи, которые не были запущены из оболочки вообще (например, задания cron), могут иметь совершенно другое значение $PATHs
.
/etc/paths
в моем, но я бегу,10.4.11
и с тех пор, вероятно, все изменилось