Как включить завершение команды для Azure CLI в zsh?
Я обнаружил подсказки о том, что команда bash[1] для CLI Azure доступна для завершения команд (az
команда), но я не нашел никаких указаний о том, как установить / включить это для Zsh. Кто-нибудь знает, как это сделать, если это возможно? Я пользуюсь oh-my-zsh, если это уместно.
[1] https://docs.microsoft.com/en-us/cli/azure/get-started-with-azure-cli?view=azure-cli-latest
8 ответов
Можно иметь доработки для az
в зш.
Получите дополнения для bash из репозитория git Azure CLI и сохраните этот файл там, где его может найти скрипт запуска zsh: https://raw.githubusercontent.com/Azure/azure-cli/dev/az.completion
Включите автозаполнение bash в zsh (если оно еще не включено) [1]:
autoload -U +X bashcompinit && bashcompinit
source /path/to/az.completion
(вы, вероятно, захотите это также в вашем файле запуска для zsh).
[1] Можно ли использовать скрипт завершения табуляции Bash в zsh?
Установил Az CLI на macOS Monterey с Homebrew. Я использовал эти команды в своем
~/.zshrc
файл:
autoload -U +X bashcompinit && bashcompinit
source /opt/homebrew/etc/bash_completion.d/az
Автозаполнение развернуто в другом месте.
Кроме того, файл завершения bash уже должен быть установлен в вашей системе.
Ищу /etc/bash_completion.d/azure-cli
Если файл есть, вы можете пропустить шаг 1 в принятом ответе и напрямую получить этот файл.
Если в вашей ОС есть
/etc/bash_completion.d/azure-cli
, то с oh-my-zsh это так же просто, как:
$ ln -s /etc/bash_completion.d/azure-cli ~/.oh-my-zsh/custom/az.zsh
$ source ~/.zshrc
В качестве альтернативы вы должны скачать его:
$ wget https://raw.githubusercontent.com/Azure/azure-cli/dev/az.completion \
-O ~/.oh-my-zsh/custom/az.zsh
В MacBook
- Загрузите скрипт Bash_completion
- поместите сценарий завершения az bash в /usr/local/etc/bash_completion.d
- Убедитесь, что скрипт z имеет разрешения для исполняемого файла.
- Обновите файл.zshrc, как показано ниже: автозагрузка bashcompinit && bashcompinit source /usr/local/etc/bash_completion.d/az
- Перезагрузите ваш терминал.
Я попал на эту страницу в поисках Zshaz
советы по завершению. Основываясь на более ранних сообщениях, следующее добавляет завершение с использованием Antidote для управления плагинами:
Добавлять
Azure/azure-cli kind:clone path:az.completion
на ваш.zsh_plugins.txt
файл
В вашей.zshrc
, доantidote load
, добавлять
autoload -Uz compinit
compinit
autoload -U +X bashcompinit
bashcompinit
Если вы установили az cli с Brew*, эта строка будет добавлена в~/.zshrc
делает свое дело:
[ -s "$(brew --prefix)/etc/bash_completion.d/az" ] && \. "$(brew --prefix)/etc/bash_completion.d/az"
* даже если он отсутствует, терминал запускается без ошибок благодаря проверке в начале команды.
Для bash вот шаги:
1: AzureJumpBox $ cd /etc/bash_completion.d/ AzureJumpBox $ ls apport_completion azure-cli git-prompt grub
2: AzureJumpBox $ источник /etc/bash_completion.d/azure-cli
3: AzureJumpBox $ az aks Вы увидите все варианты