一直习惯使用debian、ubuntu系统,最近it要求各种加固,并且只提供centos脚本,而ubuntu版本14、16、17都要自己整一遍太麻烦,于是部门纷纷换装centos。
换了centos其它还好,就是make命令实在不方便。编译系统的make有几十个目标,加一些繁琐的参数,在ubuntu可以用tab自动补全,在centos完全不行。(centos最小安装,已安装bash-completion)
比如有aaa,bbb,ccc……等60个目标,加congfig=xxxxx/yyyy,
在ubuntu只要输入:
make a[tab] config=x[tab][tab][tab]
在centos则需要全部手写:
make aaa config=xxxxx/yyyy
记不住~
百度bing也找不到ubuntu、centos的这些差异,估计太细小了。
最后搜 bash-completion 原理,配置脚本在 /etc/bash_completion.d/ ,遂全部从ubuntu拷贝到centos,重新登陆,不生效。
最后找到,系统默认的配置在 /usr/share/bash-completion/completions/
ubuntu:
ls /usr/share/bash-completion/completions/|wc -l
583
centos:
ls /usr/share/bash-completion/completions/|wc -l
192
差别巨大。找到 /usr/share/bash-completion/completions/make 拷贝过来,解决。
原文:https://www.cnblogs.com/i1022/p/11360223.html