Tab 补全不完成带有转义 space 的路径

Tab completion doesn't complete paths with escaped space

有一段时间我遇到了一个烦人的 bash-完成问题,即当路径包含转义的 space 时它不起作用。例如,我在 /cygdrive/c 中输入

$ cd Pro

按 Tab 键完成 "cd Program",按两次显示带有此 "Program" 前缀的所有目录:

Program Files/       Program Files (x86)/ ProgramData/

我想 cd 到 "Program Files" 所以我输入

$ cd Program\ 

(反斜杠后有 space),从现在开始按 Tab 键什么都不做。它曾经在一段时间前工作过,但我无法确定它到底是什么时候停止的。关于这可能是什么原因的任何提示?

bash_completion 包似乎有问题。我遇到了 cd 的问题,但 ls 等其他程序没有。您可以删除该软件包或将 complete -r cd 放入 .bashrc.