最近几年从redhat系切换到debian系了,不过经常使用的是ubuntu发行版。最近因为折腾S905等一些arm/x86低性能玩意,所以又折腾了debian11。装好系统后才发现之前ubuntu20.04自带的bash-completion并没有在debian11中默认安装【debian确实精简😂】,所以这里记录一下如何安装和使用。

安装

apt install bash-completion

安装完会发现并不能直接使用,因为没有加载到环境里面。需要修改/etc/bash.bashrc文件:

# enable bash completion in interactive shells 这里已经说明了直接把下面if语句的注释去掉即可。
#if ! shopt -oq posix; then
# if [ -f /usr/share/bash-completion/bash_completion ]; then
# . /usr/share/bash-completion/bash_completion
# elif [ -f /etc/bash_completion ]; then
# . /etc/bash_completion
# fi
#fi

因为/etc/bashrc(debian系是/etc/bash.bashrc)会自动加载,所以重新登入终端即可生效。也可以手动执行source /etc/bash.bashrc使之生效。

使用

# 比如我想查看apt命令的参数,直接输入apt 然后连按两次[tab]键即可自动补全。
root@debian:~# apt
autoclean build-dep depends edit-sources install policy remove showsrc upgrade
autopurge changelog dist-upgrade full-upgrade list purge search source
autoremove clean download help moo rdepends show update