在 Ubuntu 20.04 LTS 终端上使用环境变量名称时如何禁用自动反斜杠插入

Jan*_*ala 3 command-line bash environment-variables 20.04

当我在 Ubuntu 20.04 LTS 终端上使用环境变量名称并按Tab自动完成时(我已经测试了 Ubuntu 20.04 LTS 安装和终结器附带的两个终端,两者的行为相同),Ubuntu 在美元符号 $ 之前插入反斜杠 \ ,导致环境变量不再按预期工作。

例如,之前在 Ubuntu 18.04 LTS 终端上:

ll $HOME/Deskt (+TAB) -> ll $HOME/Desktop/
Run Code Online (Sandbox Code Playgroud)

现在在 Ubuntu 20.04 LTS 终端上:

ll $HOME/Deskt (+TAB) -> ll \$HOME/Desktop/
Run Code Online (Sandbox Code Playgroud)

不用说,后者的结果是

ls: cannot access '$HOME/Desktop/': No such file or directory
Run Code Online (Sandbox Code Playgroud)

那么如何禁用自动\插入呢?

小智 5

将以下行添加到您的~/.bashrc

shopt -s direxpand
Run Code Online (Sandbox Code Playgroud)

然后运行此命令以应用更改:

source ~/.bashrc
Run Code Online (Sandbox Code Playgroud)