Brew установлен, связан, но не найден

Brew установлен, связан, но не найден

Я только что установил mtrчерез Homebrew, и установка, по-видимому, прошла успешно (т.е. ничего необычного).

MBA% mtr
zsh: command not found: mtr

Это странно. Я решил попробовать еще раз:

MBA% brew install mtr
Warning: mtr-0.86 already installed

Хорошо, возможно, это символическая ссылка как mtr-0.86:

MBA% mtr-0.86
zsh: command not found: mtr-0.86

Нет, ладно, может быть, просто не удалось установить связь:

MBA% brew link mtr
Warning: Already linked: /usr/local/Cellar/mtr/0.86
To relink: brew unlink mtr && brew link mtr
MBA% brew unlink mtr && brew link mtr
Unlinking /usr/local/Cellar/mtr/0.86... 3 symlinks removed
Linking /usr/local/Cellar/mtr/0.86... 2 symlinks created
MBA% mtr zsh: command not found: mtr

Однако:

MBA% /usr/local/Cellar/mtr/0.86/sbin/mtr
[Success]

Что происходит? Почему Homebrew не может выполнить линковку (и создает меньше символических ссылок при перелинковке, если уж на то пошло...)?

решение1

Я видел то же самое при установке brew 0.86. В то время как большинство двоичных файлов ссылаются на /usr/local/bin, brew get ссылается на /usr/local/sbin. Это абсолютно верно, но вам нужно расширить свой путь, чтобы избежать ввода полного пути.

export PATH="/usr/local/bin:/usr/local/sbin:~/bin:$PATH"

исправит это один раз, и вам нужно будет настроить ваш .bash_profile, чтобы исправить это навсегда

решение2

Для mtr v0.86 и ниже:

brew install mtr
ln /usr/local/Cellar/mtr/0.86/sbin/mtr /usr/local/bin/mtr
sudo mtr superuser.com

Но начиная с mtr v0.87 нужна еще одна команда:

ln /usr/local/Cellar/mtr/0.92/sbin/mtr-packet /usr/local/bin/mtr-packet

решение3

Добавить /usr/local/sbinк текущей PATHпеременной и сделать постоянной.

export PATH="/usr/local/bin:/usr/local/sbin:~/bin:$PATH"
echo '/usr/local/sbin' | sudo tee -a /etc/paths

решение4

Ответ нашел в Stack Overflow:https://stackoverflow.com/a/72387809/602072

ПРИМЕЧАНИЕ: Для устройств Apple Silicon PATH отличается.

Добавьте эту(ие) строку(и) в .bashrcили.zshrc

# Intel export PATH=$PATH:/usr/local/sbin

# Apple Silicon export PATH=$PATH:/opt/homebrew/sbin 

Запустите source ~/.bashrcили source ~/.zshrcзакройте/откройте терминал.

Затем запустите mtr как обычно.

sudo mtr 1.1.1.1 

Связанный контент