Команда не найдена: завершена

У меня свежий mac передо мной, я установил homebrew (просто отлично), и о мой zsh (просто отлично).

Я пытаюсь установить autojump, который является интеллектуальной базой каталогов. Например, вы можете "прыгать" на ~/Documents с помощью j doc в терминале.

Я сделал это

brew install autojump

У меня уже есть мой .zshrc, который отлично выглядит, я думаю. Я добавил строку, в которой он сказал:

[[ -s `brew --prefix`/etc/autojump.sh ]] && . `brew --prefix`/etc/autojump.sh

Когда я запустил iterm2, я получаю следующее предупреждение:

/usr/local/Cellar/autojump/21.3.0/etc/autojump.bash:13: command not found: complete
/usr/local/Cellar/autojump/21.3.0/etc/autojump.bash:55: = not found

Я использовал brew для установки других вещей, и я могу успешно запустить autojump -s, поэтому я знаю, что он видит $path. Я не знаю, что еще может быть неправильно, поскольку это все новая установка.

Ответ 1

В вашем .zshrc вы должны указать autojump.zsh, а не autojump.bash (Я не знаю, где он будет находиться на Mac, но он будет в той же папке, что и autojump.bash).

В Ubuntu вот что вам нужно добавить в конце вашего .zshrc:

source /usr/share/autojump/autojump.zsh

Ответ 2

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

[[ -s `brew --prefix`/etc/autojump.sh ]] && . `brew --prefix`/etc/autojump.sh

сказать:

[[ -s `brew --prefix`/etc/autojump.zsh ]] && . `brew --prefix`/etc/autojump.zsh

то есть. используйте .zsh версию autojump script. Это исправило это для меня.

Ответ 3

В этом файле нет Shebang. Это означает, что он, вероятно, интерпретируется Zsh.

Это проблема, потому что complete - Bash встроенный.

Возможно, этот может быть для вас проблемой, или, может быть,

[[ -s `brew --prefix`/etc/autojump.sh ]] && bash `brew --prefix`/etc/autojump.sh

Ответ 4

Вам нужно добавить

[[-s `brew --prefix`/etc/autojump.sh]] && & && & & &, ` brew--prefix`/и т.д. /autojump.sh

на ваш ~/.bash_profile Homebrew сообщает об этом, когда вы устанавливаете, но я не заметил его в первый раз и пришел к этой веб-странице в результате.