执子之手

与子偕老


  • 首页

  • 分类

  • 归档

  • 标签

  • 关于

  • 搜索
close

在Mac上启用Docker的Bash Completion

时间: 2017-02-12   |   分类: 运维     |   阅读: 702 字 ~2分钟   |   访问: 0

1. 背景

在Ubuntu上使用Docker的时候,使用tab键自动完成docker命令感觉非常方便,例如:只需要输入image或者container ID的前几位就可以使用Tab键补齐整个命令行。但是在Mac上却没有办法实现相同的操作。

经过搜索终于找到了原因:原来是因为没有启用Bash completion功能导致的。而实际上Docker安装包内已经提供了针对Docker的Bash Completion脚本,只需要启用即可。

2. 安装

要启用Docker的Bash Completion功能,需要满足两个条件:

  1. 你用的是Bash这个shell(好像废话了,嘿嘿);
  2. 安装有Bash completion这个功能。

但是Mac上默认是没有安装Bash completion功能的。需要通过Homebrew进行安装。如果之前没有安装过Homebrew,首先参考附录安装。

2.1 安装bash-completion

安装bash-completion。方法如下:

1brew install bash-completion

2.2 启用bash-completion

然后将/Applications/Docker.app/Contents/Resources/etc目录中的docker-compose.bash-completion,docker.bash-completion两个文件拷贝到/usr/local/etc/bash_completion.d目录中。

最后修改.bash_profile,增加如下内容即可:

1[ -f /usr/local/etc/bash_completion ] && . /usr/local/etc/bash_completion

附录A. 参考资料

  • Command Line Completion
  • Homebrew Official Website

附录B. Homebrew使用记录

 1zhang@zhangdeMacBook-Pro:~$ brew info bash-completion
 2bash-completion: stable 1.3 (bottled)
 3Programmable completion for Bash 3.2
 4https://bash-completion.alioth.debian.org/
 5/usr/local/Cellar/bash-completion/1.3_1 (189 files, 607.8K) *
 6  Poured from bottle on 2017-01-16 at 18:09:59
 7From: https://github.com/Homebrew/homebrew-core/blob/master/Formula/bash-completion.rb
 8==> Caveats
 9Add the following lines to your ~/.bash_profile:
10  [ -f /usr/local/etc/bash_completion ] && . /usr/local/etc/bash_completion
11
12Bash completion has been installed to:
13  /usr/local/etc/bash_completion.d
#Docker# #Mac# #Bash#
从一台没有外网连接的阿里云主机上访问微信API
使用Hexo搭建个人博客
  • 文章目录
  • 站点概览
Orchidflower

Orchidflower

Do one thing at a time, and do well.

77 日志
6 分类
84 标签
GitHub 知乎 OSC 豆瓣
  • 1. 背景
  • 2. 安装
    • 2.1 安装bash-completion
    • 2.2 启用bash-completion
  • 附录A. 参考资料
  • 附录B. Homebrew使用记录
© 2009 - 2024 执子之手
Powered by - Hugo v0.113.0
Theme by - NexT
ICP - 鲁ICP备17006463号-1
0%