我的 bash 以意想不到的方式自动完成文件名。我有一个包含 2 个文件的目录:
$ ls
ssh-8ZwoymYvfDSu ssh-ha7JCIFmjUKR
当输入名称的某些前缀并按下 时<tab>
,bash 将完成直到两个名称不同的点(这是预期的):
$ ls ss
$ ls ssh-
但是,当我在前缀后添加一个星号并按下时<tab>
,bash 会完成其中一个文件名(即使前缀不明确,bash 也会忽略所有其他文件):
$ ls ss*
$ ls ssh-8ZwoymYvfDSu
我查看了文档,但没有找到任何有用的东西。我目前已在中设置了以下变量/etc/bash.bashrc
:
bind 'set colored-completion-prefix on'
bind 'set match-hidden-files off'
bind 'set show-all-if-ambiguous on'
我希望 bash 仅在名称没有歧义时才完成星号。我该怎么做?
答案1
卸载软件包 bash-completion 解决了该问题。