Я использую Homebrew на Mac OS X 10.8.3. Homebrew хочет каталог /usr/local/bin
раньше в PATH, чем /usr/bin
, иначе системные программы будут использоваться вместо управляемых заменой Homebrew.Установка zsh PATH не дает желаемого результата
Я использую ЗШ, и в моем .zshenv
я сбросить PATH, а затем использовать path_helper инициализировать его, например, так:
if [ -x /usr/libexec/path_helper ]; then
PATH=''
eval `/usr/libexec/path_helper -s`
fi
Сразу после этого, а также в .zshenv
, я предварять /usr/local/bin
к ДОРОЖКА.
export PATH="/usr/local/bin:$PATH"
Существуют различные другие дополнения к $ PATH. РВМ, /usr/local/sbin
и мой личный bin
каталог:
export PATH=$HOME/.rvm/bin :$PATH
...
export PATH=$PATH:/usr/local/sbin:$HOME/bin
Наконец, я использую typeset -u
для удаления дубликатов (хотя, где они приходят является для меня загадкой) из PATH.
typeset -U PATH
После всего этого вот что мой путь выглядит следующим образом:
/Users/mark/.rvm/gems/ruby-1.9.3-p374/bin
/Users/mark/.rvm/gems/[email protected]/bin
/Users/mark/.rvm/rubies/ruby-1.9.3-p374/bin
/Users/mark/.rvm/bin
/usr/bin
/bin
/usr/sbin
/sbin
/usr/local/bin
/usr/local/sbin
/Users/mark/bin
Я знаю, что /etc/paths
устанавливает эти пути:
/usr/bin
/bin
/usr/sbin
/sbin
/usr/local/bin
так что я редактировал файл и удалить /usr/local/bin' option so that the only place it is being set is in
.zshenv`.
Все это содержится в моем репозитории dotfile на GitHub (https://github.com/zan5hin/dotfiles) и используется на двух ноутбуках. На первом ноутбуке путь правильный, с /usr/local/bin
сразу после записей RVM. На втором ноутбуке это выглядит, как описано выше.
Я затрудняюсь объяснить причину неправильного пути на втором компьютере, когда конфигурация zsh является идентичной копией.
Может ли кто-нибудь предложить, почему путь был бы не в порядке?
Спасибо.
Следуя инструкциям по этому вопросу (http://stackoverflow.com/questions/10343834/homebrew-wants-me-to-amend-my-path-no-clue-how) и редактируя/etc/paths файл для перемещения '/ usr/local/bin' в начало списка, мне удалось заставить обе машины иметь соответствующие и правильные пути. Я до сих пор не понимаю, почему экспорт пути из моего .zshenv не работал должным образом. –