问题:普通用户的时候,按两下tab键就能启用第二级补全,但是切换到root之后就没有了。
原因:普通用户和root用户的Bash自动补全行为可能会有所不同。这通常是由于配置文件的差异或权限问题导致的。
1. 检查Bash配置文件(一般是这个原因)
首先,确保root用户的Bash配置文件(通常是/root/.bashrc)中启用了Bash自动补全功能。你可以编辑该文件并确保以下内容没有被注释掉:
if [ -f /etc/bash_completion ] && ! shopt -oq posix; then
. /etc/bash_completion
fi
如果这些行被注释掉了,请去掉注释并保存文件,然后重新启动终端或运行以下命令以使更改生效:
source /root/.bashrc
2. 确保安装了bash-completion包
确保系统已经安装了bash-completion包。你可以使用以下命令进行安装:
sudo apt-get install bash-completion
安装完成后,确保在root用户的Bash配置文件中加载了bash-completion。
3. 手动加载bash_completion
有时候,即使配置文件正确,自动补全功能仍然无法正常工作。你可以尝试手动加载bash_completion:
source /etc/bash_completion
4. 检查/etc/inputrc文件
确保/etc/inputrc文件中没有禁用自动补全的设置。打开该文件并检查是否有以下内容:
set disable-completion off
如果没有,请添加这行内容并保存文件。