Ver extraños signos de interrogación en bash shell

Ver extraños signos de interrogación en bash shell

Noté algo extraño en nuestros servidores RHEL7: en el shell siempre aparecen signos de interrogación que encierran partes del texto. Algo así como esto:

rm file.txt
rm: remove regular file ?file.txt??

O esto:

rm 886- rm: cannot remove ?886-?: No such file or directory

¿Esto es normal?

Estoy haciendo ssh desde un escritorio Ubuntu 16.04 a los servidores RHEL7 y usando la pantalla. ¿Podría ser esta la fuente de las diferencias?

Respuesta1

rmestá intentando mostrar un carácter que su terminal no admite. Esa es una señal de que tulugarLa configuración es incorrecta, específicamente LC_CTYPE. La LC_CTYPEvariable de entorno debe ser configurada por el emulador de terminal y no modificada por ningún script como .profileo .bashrc.

Indicas que estás ejecutando la pantalla. Si inició la sesión de pantalla en una configuración regional y la conectó en otra configuración regional, la pantalla traducirá los caracteres no admitidos a ?. No puede cambiar la configuración regional en aplicaciones que ya se están ejecutando, como el shell que está ejecutando en esa ventana; la mayoría de las aplicaciones no tienen soporte para cambiar la configuración regional sobre la marcha. Túpoderhágalo en el shell configurando la LC_CTYPEvariable. Para ver lo que espera tu terminal, imprime el valor de LC_CTYPEantes de adjuntarlo a la sesión de pantalla.

Para ahorrarse dolores de cabeza, adopte configuraciones locales consistentes en todas partes. Hoy en día, UTF-8 es el estándar en todas partes; cualquier otra codificación debe usarse solo por compatibilidad con aplicaciones o dispositivos más antiguos.

información relacionada