Баш-завершение добавляет завершение для:
- Названия команд после
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 для получения инструкций о том, как включить завершение для имен портов.