Баш-завершение добавляет завершение для:
- Имена команд после
sudo
и which
- Названия пакетов Macports и Homebrew (необязательно)
- Имена хостов в
known_hosts
для таких команд, как ssh
- Папки на
CDPATH
И так далее. Вы можете напечатать список команд завершения с помощью команды complete -p
и просмотреть исходный текст функции с помощью команды declare -f
.
Установка Homebrew или MacPorts и Bash
Во-первых, вы должны установить Homebrew или MacPorts в соответствии с инструкциями. Примечание. Не устанавливайте оба, так как они конфликтуют.
Затем установите более новую версию Bash. Встроенный Bash в OS X немного устарел, и вы получите больше вариантов завершения с Bash> 4.1, которые вы можете получить через
brew install bash
или же
sudo port install bash
в зависимости от того, используете ли вы Homebrew или MacPorts.
Установка bash-дополнения с помощью Homebrew
Чтобы установить bash-completion
, вам необходимо:
brew install bash-completion
И добавьте следующее в ваш ~/.bash_profile
:
if [ -f $(brew --prefix)/etc/bash_completion ]; then
. $(brew --prefix)/etc/bash_completion
fi
В настоящее время Homebrew устанавливает более старую версию bash-complete (1.3), которая все еще работает с Bash 3.x, но все же рекомендуется использовать Bash 4.x.
Установка bash-дополнения с MacPorts
С MacPorts:
sudo port install bash-completion
Затем добавьте в ваш ~/.bash_profile
:
if [ -f /opt/local/etc/profile.d/bash_completion.sh ]; then
. /opt/local/etc/profile.d/bash_completion.sh
fi
См. Trac.macports.org/wiki/howto/bash-completion для получения инструкций о том, как включить завершение для имен портов.