Configure BASH Autocomplete for Kubectl CLI on MacOS X

Problem

When working with the Kubectl CLI often, it is much more efficient to be able to autocomplete long commands and resource names.

Environment

  • Platform9 Managed Kubernetes - All Versions

  • MacOS X - v10.13.x

Procedure

  1. Install the Homebrewarrow-up-right binary.

$ /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
  1. Install the bash-completion package.

$ brew install bash-completion
  1. If you do not have a dedicated terminal and need to enable autocompletion on the fly, run the following command.

$ source <(kubectl completion zsh)

Otherwise, append the following command to your .zshrc file to enable autocomplete persistently.

$ echo "source <(kubectl completion zsh)" >> ~/.zshrc

If above command fails with error "Command not found: compdef" then run below command to load compinit:

Additional Information

See Kubernetes Reference: Kubectl Cheat Sheetarrow-up-right for more handy commands and configurations.

Last updated