Подтвердить что ты не робот

Brew врач говорит: "Ошибка:/usr/bin происходит до /usr/local/bin ", как исправить?

Adams-MacBook-Pro% brew doctor                                 

Error: /usr/bin occurs before /usr/local/bin
This means that system-provided programs will be used instead of those
provided by Homebrew. The following tools exist at both paths:

    clusterdb
    createdb
    createlang
    createuser
    dropdb
    droplang
    dropuser
    ecpg
    git
    git-cvsserver
    git-receive-pack
    git-shell
    git-upload-archive
    git-upload-pack
    gitk
    pg_config
    pg_dump
    pg_dumpall
    pg_restore
    pg_upgrade
    psql
    reindexdb
    vacuumdb

Consider amending your PATH so that /usr/local/bin
is ahead of /usr/bin in your PATH.

Вот мой путь:

Adams-MacBook-Pro% echo $PATH                                  
/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin

Я думал, что опасно перемещать вещи на фронт? Как решить эту проблему? Кроме того, я даже не уверен, где найти, где /user/bin объявлен в пути.

Спасибо

4b9b3361

Ответ 1

$PATH - это просто переменная, содержащая строку. Поставить что-то впереди:

% PATH=/usr/local/bin:$PATH
% echo $PATH
/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin

Это не опасно, поскольку оно применимо только к текущей оболочке, которую вы открыли (это не повлияет на путь для вашей системы или других оболочек).

Чтобы автоматически изменить путь для всех открываемых оболочек, поместите их в ~/.profile. Вы можете создать этот файл, если он еще не существует.

В ~/.profile:

homebrew=/usr/local/bin:/usr/local/sbin
export PATH=$homebrew:$PATH

export делает эту переменную доступной для любых дочерних процессов оболочки.

Ответ 2

Я нашел другой способ решить эту проблему.

sudo vim /etc/paths

и добавьте /usr/local/bin и/usr/local/sbin, как этот

/usr/local/bin
/usr/local/sbin
/usr/bin
/bin
/usr/sbin
/sbin

откройте новую вкладку терминала, а затем вы увидите

~ $ env|grep PATH
PATH=/usr/local/bin:/usr/local/sbin:/usr/bin:/bin:/usr/sbin:/sbin:/opt/X11/bin

Ответ 3

Просто запустите следующую строку в своем любимом терминальном приложении:

echo export PATH="/usr/local/bin:$PATH" >> ~/.bash_profile

Перезагрузите терминал и запустите

brew doctor

проблема должна быть решена.

Ответ 4

Я только что создал файл .bashrc и добавил

homebrew =/usr/local/bin:/usr/local/sbin
экспорт PATH = $homebrew: $PATH

Это, похоже, сделало трюк!

Ответ 5

Возможно, OP использует zsh.
Способ его решения - отредактировать ~/.zshrc каждый раз, когда вы открываете iterm, загрузите этот файл.
Измените слова о PATH.

Ответ 6

Если вы действительно хотите сделать его постоянным и по умолчанию, отредактируйте файл /etc/paths (используя sudo) и переместите /usr/local/bin в начало списка.

В моем собственном .bash_profile я использую script, называемый "pathadd", который не позволяет моему PATH получать громоздкие и полные дубликаты при разрыве оболочек. Поэтому я принял действие /etc/paths специально, чтобы избежать дублирования каталогов в PATH, добавив /usr/local/bin на фронт снова и снова.

Ответ 7

Вам необходимо перезапустить свой терминал после любого изменения с помощью $PATH.

Ответ 8

В OS X Mountain Lion, который нуждался в редактировании, был ~/.bash_profile