Tengo algunos problemas con la codificación de diéresis alemanas en bash. Principalmente funciona bien, pero cuando escribo un comando no válido, el mensaje de error generado por bash contiene secuencias de escape extrañas y no los caracteres reales.
Aquí hay un registro que muestra el problema:
[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 äöü
la configuración de mi /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
solo contiene las configuraciones regionales de_DE:
de_DE.UTF-8 UTF-8
de_DE ISO-8859-1
de_DE@euro ISO-8859-15
locale
salida:
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=
¿Qué emulador de terminal estás usando?
—
Roman B.
@RomanB: masilla, pero el problema es el mismo si usa el shell sin procesar localmente, por lo que este es un problema bash.
—
smerlin
@smerlin, no hay "el shell sin procesar", ¿te refieres a la consola, gnome-terminal, urxvt, xterm u otro? Si usa la consola, ¿qué sucede si intenta "export TERM = linux"?
—
Alexander
@Alexander Lo mismo:
—
Roman B.
$ ö bash: $'\303\266': command not found