brew lekarz mówi "błąd: /usr / bin występuje przed / usr / local / bin" jak naprawić?

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.

Oto moja ścieżka:

Adams-MacBook-Pro% echo $PATH                                  
/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin
Myślałem, że to niebezpieczne przenieść rzeczy na przód? Jak rozwiązać ten problem? Ponadto, nie jestem nawet pewien, gdzie znaleźć ,gdzie/user / bin jest zadeklarowany w ścieżce.

Dzięki

Author: AdamT, 2012-07-04

8 answers

$PATH jest tylko zmienną zawierającą łańcuch znaków. Aby umieścić coś z przodu:

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

Nie jest to niebezpieczne, ponieważ dotyczy tylko obecnej powłoki, którą masz otwartą (nie wpłynie to na ścieżkę dla Twojego systemu lub innych powłok).

Aby automatycznie zmienić ścieżkę dla wszystkich otwartych powłok, umieść ją w ~/.profile. Możesz utworzyć ten plik, jeśli jeszcze nie istnieje.

W ~/.profile:

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

export udostępnia zmienną dowolnym procesom potomnym shell.

 49
Author: Dean,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-05-23 12:17:42

Znalazłem inny sposób, by to rozwiązać.

sudo vim /etc/paths

I dodaj /usr / local /bin i/usr/local / sbin w ten sposób

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

Otwórz nową kartę terminal, a następnie zobaczysz

~ $ env|grep PATH
PATH=/usr/local/bin:/usr/local/sbin:/usr/bin:/bin:/usr/sbin:/sbin:/opt/X11/bin
 23
Author: Lelouchcr,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-06-14 13:45:04

Po prostu uruchom następującą linię w ulubionej aplikacji terminala:

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

Uruchom ponownie terminal i uruchom

brew doctor

Problem powinien zostać rozwiązany

 10
Author: iceturk22,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-10-31 01:14:14

Właśnie stworzyłem .plik bashrc i dodany

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

To chyba zadziałało!

 4
Author: pixel 67,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-04-28 11:52:51

Może OP używa zsh .
Sposobem na jego rozwiązanie jest edycja ~/.zshrc za każdym razem, gdy otwierasz iterm załaduje ten plik.
Zmień słowa o ścieżce .

 3
Author: Slahser,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-04-08 13:02:48

Jeśli naprawdę chcesz, aby był stały i domyślny, Edytuj plik/etc / paths (używając sudo) i przenieś / usr / local / bin na górę listy.

W moim własnym .bash_profile używam skryptu o nazwie "pathadd", który zapobiega powstawaniu nieporęcznych i pełnych duplikatów podczas rozwidlania powłok. Zastosowałem więc akcję /etc/paths specjalnie, aby uniknąć powielania katalogów w ścieżce przez dodawanie /usr/local/bin do przodu raz za razem.

 2
Author: Mojo,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-10-20 16:20:00

Musisz ponownie uruchomić Terminal po każdej zmianie za pomocą $PATH.

 1
Author: Даниил Пронин,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-05-02 01:20:36

Na OS X Mountain Lion, które wymagały edycji było ~/.bash_profile

 0
Author: Slava V,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-08-19 09:33:49