避免在shell上隐藏字符

避免在shell上隐藏字符,shell,encoding,utf-8,keyboard,locale,Shell,Encoding,Utf 8,Keyboard,Locale,如果我键入: # ls ß[backspace]-l (或其他特殊字符,如“ü”而不是ß) 我得到: 另一个例子: # ß[backspace]ls -bash: $'\303ls': command not found 这发生在CentOS 7和BASH(v4.2.46)上 最后一个ANSI_X3.4-1968应该是UTF-8(由$LANG定义)。但我不知道如何改变它 在Ubuntu和debian上(除了ANSI)可以打印特殊字符,但只需一个退格(每个退格)就可以删除它们 我怎样才能忽略s

如果我键入:

# ls ß[backspace]-l
(或其他特殊字符,如“ü”而不是ß) 我得到:

另一个例子:

# ß[backspace]ls
-bash: $'\303ls': command not found
这发生在CentOS 7和BASH(v4.2.46)上

最后一个
ANSI_X3.4-1968
应该是
UTF-8
(由$LANG定义)。但我不知道如何改变它

在Ubuntu和debian上(除了
ANSI
)可以打印特殊字符,但只需一个退格(每个退格)就可以删除它们

我怎样才能忽略shell上的非UTF-8字符,或者使用单个退格来删除它们

# ß[backspace]ls
-bash: $'\303ls': command not found
# localectl 
 System Locale: LANG=en_US.UTF-8
     VC Keymap: de
    X11 Layout: de

# locale
 LANG=en_US.UTF-8
 LC_CTYPE="C"
 LC_ALL=C

# locale charmap
 ANSI_X3.4-1968