Tôi có một số vấn đề với việc mã hóa tiếng Đức trong bash. Nó chủ yếu hoạt động tốt, nhưng khi tôi gõ một lệnh không hợp lệ, thông báo lỗi được tạo bởi bash chứa các chuỗi thoát lạ và không phải là các ký tự thực tế.
Đây là một bản ghi, cho thấy vấn đề:
[root@myhost ~]# mkdir ä
[root@myhost ~]# ä
-bash: $'\303\244': Kommando nicht gefunden.
[root@myhost ~]# ü
-bash: $'\303\274': Kommando nicht gefunden.
[root@myhost ~]# ls
ä äöü Projects tbb
[root@myhost ~]# cat äöü
äüö
[root@myhost ~]# rm ä
rm: Entfernen von „ä“ nicht möglich: Ist ein Verzeichnis
[root@myhost ~]# rmdir ä
[root@myhost ~]# rm äöü
cấu hình của tôi /etc/rc.conf
:
LOCALE="de_DE.UTF-8"
DAEMON_LOCALE="no"
HARDWARECLOCK="localtime"
TIMEZONE="Europe/Berlin"
KEYMAP="de-latin1"
CONSOLEFONT=
CONSOLEMAP=
USECOLOR="yes"
/etc/locale.gen
chỉ chứa các ngôn ngữ de_DE:
de_DE.UTF-8 UTF-8
de_DE ISO-8859-1
de_DE@euro ISO-8859-15
locale
đầu ra:
LANG=de_DE.UTF-8
LC_CTYPE="de_DE.UTF-8"
LC_NUMERIC="de_DE.UTF-8"
LC_TIME="de_DE.UTF-8"
LC_COLLATE="de_DE.UTF-8"
LC_MONETARY="de_DE.UTF-8"
LC_MESSAGES="de_DE.UTF-8"
LC_PAPER="de_DE.UTF-8"
LC_NAME="de_DE.UTF-8"
LC_ADDRESS="de_DE.UTF-8"
LC_TELEPHONE="de_DE.UTF-8"
LC_MEASUREMENT="de_DE.UTF-8"
LC_IDENTIFICATION="de_DE.UTF-8"
LC_ALL=
Trình giả lập thiết bị đầu cuối nào bạn đang sử dụng?
—
La Mã B.
@RomanB: putty, nhưng vấn đề là như nhau nếu sử dụng shell thô cục bộ, vì vậy đây là một vấn đề bash.
—
smerlin
@smerlin, không có "shell raw", ý bạn là console, gnome-terminal, urxvt, xterm hay cái khác? Nếu bạn sử dụng bàn điều khiển, điều gì xảy ra nếu bạn thử "export TERM = linux"?
—
Alexander
@Alexander Giống nhau:
—
Roman B.
$ ö bash: $'\303\266': command not found