变量扩展问题

变量扩展问题

我正在运行 lubuntu 20.04 裸机安装,没有涉及 docker。

env | grep -i shell
SHELL=/bin/bash

每当我尝试扩展系统变量(例如 $HOME)时,自动完成功能都无法正常工作。例如 $HOME

echo $HOME
/home/alex

正确的设置。

     cat \$HOME/zu_entfernende_Kernel 
cat: '$HOME/zu_entfernende_Kernel': Datei oder Verzeichnis nicht gefunden

当我按下 Tab 键进行自动完成时,$HOME扩展\$HOME为德语输出,很抱歉,但这个错误似乎与我的语言环境有关。

注意当我使用

LANG=C 

才能按预期工作。

alex@Guilmon:~$ LANG=C
alex@Guilmon:~$ cat $HOME/zu_entfernende_Kernel
linux-headers-5.3.0-62
linux-headers-5.3.0-62-generic
linux-image-5.3.0-62-generic
alex@Guilmon:~$ 

区域信息

    localectl status
   System Locale: LANG=de_DE.UTF-8
       VC Keymap: de
      X11 Layout: de
       X11 Model: pc105
     X11 Options: caps:none

知道如何才能查明错误吗?

答案1

就我而言,简单的解决方案是删除 $HOME/.bashrc。

来自 /etc/skel/.bashrc 中的原始文件

if [ -f /usr/share/bash-completion/bash_completion ]; then
    . /usr/share/bash-completion/bash_completion

意味着如果文件存在则读取它。这就是让我困扰的功能。

# Turn on extended globbing and programmable completion
shopt -s extglob progcomp

相关内容