/ etc / paths в OS X и других Unices

8

Является ли /etc/pathsпрочитан всеми оболочками , что я бегу в OS X? Например, если я использую zsh, будет ли он анализироваться /etc/pathдля заполнения $PATH?

Какова именно последовательность, которую OS X следует заполнить $PATH? Делает ли это иначе, чем другие Unices?

мистифицировать
источник
Да, по-видимому, он использует какой-то файл с именем /etc/path:). Это не стандартная вещь * nix, так что файл, вероятно, вызывается из одного из стандартных. Попробуйте grep path /etc/bash.bashrc /etc/profile /etc/zsh/*это должно вернуть строку, которая вызывает /etc/path.
Terdon

Ответы:

10

Разработчики OSX реализовали свой собственный способ настройки $ PATH, который, насколько я знаю, отличается от всех других Unices. Они используют программу под названием, path_helperкоторая будет читать /etc/pathsи файлы в /etc/path.dи изменять соответствующим образом пользователя по умолчанию $PATH.

В соответствии с этим этот параметр $PATHустанавливается только для оболочек входа в систему. Возможно, именно поэтому iTerminal по умолчанию запускает оболочки входа в систему (мне всегда было интересно, почему они выбрали это).

Согласно тому же источнику, path_helperзапускается /etc/profileи /etc/csh.loginкоторый должен влиять

  • bash логин оболочки
  • csh логин оболочки
  • zshвход в систему оболочки (следует прочитать /etc/profile)
  • все остальные оболочки, источником /etc/profileкоторых должно быть большинство логинов.
Тердон
источник