/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и с тех пор, вероятно, все изменилось