Docker命令的自动补齐
背景
- 在linux下输入命令或文件都是可以自动补齐的,这个特性极大的提高了我们的效率,多数情况下我们很少用命令参数的自动补齐。
- 但对docker git这类参数特别多的命令,如果不用补齐,每次都是参考文档或者–help,效率会降低不少,出错也不可避免。
- 那么能否实现docker的参数自动补齐呢,答案是肯定的。
实例
-
本文我以一个centos 7.7为例
-
安装好docker
curl -fsSL get.docker.com -o get-docker.sh sh get-docker.sh --mirror Aliyun
-
输入docker con 按tab键,无法出现任何提示
-
安装bash-completion
[root@wuxianfeng ~]# yum install -y bash-completion Loaded plugins: fastestmirror Loading mirror speeds from cached hostfile * base: mirrors.aliyun.com * extras: mirrors.aliyun.com * updates: mirrors.aliyun.com Resolving Dependencies --> Running transaction check ---> Package bash-completion.noarch 1:2.1-8.el7 will be installed --> Finished Dependency Resolution Dependencies Resolved ======================================================================================================================================================== Package Arch Version Repository Size ======================================================================================================================================================== Installing: bash-completion noarch 1:2.1-8.el7 base 87 k Transaction Summary ======================================================================================================================================================== Install 1 Package Total download size: 87 k Installed size: 263 k Downloading packages: bash-completion-2.1-8.el7.noarch.rpm | 87 kB 00:00:00 Running transaction check Running transaction test Transaction test succeeded Running transaction Installing : 1:bash-completion-2.1-8.el7.noarch 1/1 Verifying : 1:bash-completion-2.1-8.el7.noarch 1/1 Installed: bash-completion.noarch 1:2.1-8.el7 Complete!
-
使得生效
[root@wuxianfeng ~]# source /usr/share/bash-completion/bash_completion
-
再次输入docker con,按tab键,可以实现自动补齐的效果!搞定!
[root@wuxianfeng ~]# docker con config container context
-
再次登录也是可以有效的
关于bash-completion
-
它是对bash补全功能的一个增强,增加了对参数和包名的补全,跟docker其实是无关的,所有的命令都支持补齐。
-
官网:https://github.com/scop/bash-completion
docker-compose
它也有命令的自动补全,下载地址:https://download.csdn.net/download/Mantou023/88614091
$ curl -L https://raw.githubusercontent.com/docker/compose/1.25.5/contrib/completion/bash/docker-compose > /etc/bash_completion.d/docker-compose
# 这个地址可能很慢,甚至超时 , 老师提供了离线的文档, docker-compose_bash_completion
$ source /etc/bash_completion.d/docker-compose # 对docker-compose这个文件并没有存放要求,但由于跟程序名一样了,注意要带上路径,如果不带上路径,哪怕在当前目录下也认为你要去source 那个二进制文件
# 这个文件不大,大概13KB左右