在OSX iTerm2 oh-my-zsh上完成Docker shell

我试图在这个堆栈上完成Docker shell的完成(OSX iTerm2 oh-my-zsh)

我按照本指南 – > https://docs.docker.com/compose/completion/

首先我执行了这个

$mkdir -p ~/.zsh/completion
$curl -L https://raw.githubusercontent.com/docker/compose/master/contrib/completion/zsh/_docker-compose > ~/.zsh/completion/_docker-compose

然后我几乎在末尾〜/ .zshrc文件中添加了这两行

fpath=(~/.zsh/completion $fpath)
autoload -Uz compinit && compinit -i

然后在终端我跑

source ~/.zshrc
exec $SHELL -l

但是当我按Tab键时,它会建议路径上的文件和文件夹

最佳答案
您为docker-compose设置了完成,而不是为docker设置.如果您还想添加docker completion,请运行以下命令并重新加载shell.

curl -L https://raw.githubusercontent.com/docker/docker-ce/master/components/cli/contrib/completion/zsh/_docker > ~/.zsh/completion/_docker 

其他解决方案(UPDATE):

将docker插件添加到.zshrc的插件列表中:

>打开〜/ .zshrc
>将docker添加到插件列表中,如下所示:
plugins =(docker …)

转载注明原文:在OSX iTerm2 oh-my-zsh上完成Docker shell - 代码日志