Her*_*rge 15 unix bash keyboard-shortcuts
在bash中,环境变量在放置echo命令后会正确显示选项卡,例如:
echo $HOME
Run Code Online (Sandbox Code Playgroud)
但是在cd或cat之后,bash会在$符号前放置\,如下所示:
cd \$HOME
Run Code Online (Sandbox Code Playgroud)
如果我使用变量作为命令的第二个参数,它将根本不会扩展:
cp somefile $HOM
Run Code Online (Sandbox Code Playgroud)
我的.bashrc或.inputrc文件中有什么神秘的选项导致我这样的痛苦?
你所描述的是bash 4.2中引入的"特性" .所以你没有任何神秘的选择让你感到苦恼,而只是"有意"的行为.
我发现这非常烦人,因为我喜欢它以前的方式,并且还没有找到任何配置选项来恢复之前的行为.complete按照其他答案的建议玩选项并没有让我感到随心所欲.
尝试使用complete -r cd删除许多Linux 发行版为该cd命令安装的特殊编程完成功能。该函数将搜索 CDPATH 变量中指定的目录列表添加到 Tab 补全中cd,但代价是破坏默认补全行为。
有关更多详细信息,请参阅http://www.gnu.org/software/bash/manual/bashref.html#Programmable-Completion 。