如果我apt-g
在 hiting 之后开始键入命令tab,shell 会完成命令 to apt-get
,但是对于命令的第二部分 like install
,如果我输入一些字符,如insta
hiting tab,则不会将其完成 to install
。
另一个例子:在我进入后sudo
点击tab没有完成任何事情。例如:sudo apt-ge
[ tab] 什么都没有。
我使用 mini iso(40MB 网络安装程序)安装了 Ubuntu,所以可能有一个配置我错过了!
我已将此代码添加到我的.bashrc
但它仍然不起作用:
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
我还检查了.bashrc
它的许可-rw-r--r--
。
我还使用将更改应用到新环境但仍然没有效果的.bashrc
后更改。source .bashrc
我使用xfce4-terminal
所以我认为它可能是终端而不是 bash。
但编辑:
~/.config/xfce4/xfconf/xfce-perchannel-xml/xfce4-keyboard-shortcuts.xml
并改变:
<property name="<Super>Tab" type="string" value="switch_window_key"/>
至:
<property name="<Super>Tab" type="string" value="empty"/>
也没有什么区别。
bash-completion
是一组 bash 脚本,可以自定义完成特定命令。这不仅适用于文件和目录,还适用于命令。因此,您键入部分命令,通过点击Tab我们可以自动完成命令。
安装
第 1 步:安装 bash-completion
如果我们通过以下命令重新安装它,有时它会起作用:
第 2 步:
.bashrc
在文件中启用 bash-completion打开您的
gedit ~/.bashrc
,如果这些内容不存在,请将它们添加到它的末尾并保存。重要提示:更改文件后,您需要
~/.bashrc
使用source ~/.bashrc
或重新打开终端。现在应该修好了。如果你的情况是terminal tab在Xfce下不工作,解决方法如下:
我在这里找到了解决方案。
您也可能处于不支持自动完成的 shell 中(例如:Bourne Shell | SH)。如果你想要 BASH 自动完成你需要切换 shell,用命令代替 BASH (Bourne Again SHell)
资料来源:Ubuntu Wiki - 改变外壳
在我的例子中,我试图执行一个脚本
./myScript.sh
,但输入./my[tab]
不会自动完成。我必须向该文件添加执行权限并且自动完成工作。