¿Cómo tener mensajes de consola en inglés?

13

Soy francés y uso mi sistema Debian en francés.

Sin embargo, me gustaría tener mensajes de error en la terminal en inglés. Me permite publicarlos en sitios web de habla inglesa.

¿Cómo puedo cambiar mi configuración regional para hacerlo? Preciso que no quiero tener todo mi sistema en inglés.

ppr
fuente
1
export LANGUAGE=English
Stéphane Chazelas
@StephaneChazelas Precisar el efecto preciso y el impacto de su comando (tal vez en una respuesta más que en un comentario).
ppr
ver también ¿Qué hace "LC_ALL = C"?
Stéphane Chazelas

Respuestas:

10

Tienes que cambiar la variable LANG en el shell actual.

Poner

export LANG=en_US.UTF-8

en su archivo rc de shell (para bash lo es ~/.bashrc) y reinicie la sesión de terminal (o simplemente obtenga el archivo rc una vez más source ~/.bashrco incluso simplemente reinicie bash con exec bash)

Tenga en cuenta que debe generar este entorno local antes.

También puedes usar export LANG=C.

También hay otras variables LANG (de man bash):

   LANG   Used to determine the  locale  category  for  any  category  not
          specifically selected with a variable starting with LC_.
   LC_ALL This  variable  overrides  the  value  of LANG and any other LC_
          variable specifying a locale category.
   LC_COLLATE
          This variable determines the collation order used  when  sorting
          the  results  of pathname expansion, and determines the behavior
          of  range  expressions,  equivalence  classes,   and   collating
          sequences within pathname expansion and pattern matching.
   LC_CTYPE
          This  variable  determines  the interpretation of characters and
          the behavior of character classes within pathname expansion  and
          pattern matching.
   LC_MESSAGES
          This  variable  determines  the locale used to translate double-
          quoted strings preceded by a $.
   LC_NUMERIC
          This variable determines the locale  category  used  for  number
          formatting.
prisa
fuente
1
Usar LANGla variable de entorno solo para configurar el idioma (preferido) de los programas que se ejecutan en la consola es incorrecto. Eso es lo que LC_MESSAGESy LANGUAGEvariables de entorno se ha diseñado. Consulte la variable de configuración regional 'IDIOMA': ¿cómo configurar el inglés como idioma principal? ¿Un error en gettext? .
Piotr Dobrogost
2
Agregar un comentario para advertir al lector que incluso si se acepta la respuesta, esto no es correcto. LC_ALL=Cdebe usarse en su lugar con unset LC_ALLpara restablecer. Ver unix.stackexchange.com/q/87745/168003
el-teedee
9

Puede llamar a una aplicación con la siguiente sintaxis:

Por ejemplo, desea las páginas de manual en inglés (para un solo comando):

user@host:~# LC_ALL=C man ls

O te encuentras con un error (mi sistema está en alemán):

user@host:~$ ls -la /root/
ls: Öffnen von Verzeichnis /root/ nicht möglich: Keine Berechtigung

user@host:~$ LC_ALL=C ls -l /root/
ls: cannot open directory /root/: Permission denied
caos
fuente
Útil (pero acepté otra respuesta porque mi pregunta era sobre hacer esto permanentemente).
ppr
2
más "C" que "c", "c" no funciona en mi Debian 8.
Tristan
Sugerí una edición en LC_ALL=Clugar de la LC_ALL=ccual también falla para mí con el mensajebash: warning: setlocale: LC_ALL: cannot change locale (c)
el-teedee el
-3

Intente hacer referencia a esto: 1) https://wiki.debian.org/ChangeLanguage

En resumen, desea configurar su LOCALE (a través de LANG), preferiblemente en su .bashrc.

export LANG=en_US.UTF-8
C. Kelly
fuente
ok pero no quiero cambiar el idioma de mi sistema. Solo quiero tener algún mensaje de error en inglés. Cambiar el idioma del sistema tiene muchas consecuencias.
ppr
Creo que ponerlo en su .bashrc solo afectará a su shell, así como a cualquier comando que lea el .bashrc. Si omite "exportar", no se propagará a los comandos que comience desde ese shell.
C. Kelly
@ckelly Eso cambia muchas cosas además del lenguaje del mensaje de error. Por ejemplo, ordenar órdenes, formatear números, ...
derobert
@ppr ok, pero no quiero cambiar el idioma de mi sistema . ¿Por qué aceptaste una respuesta que da la misma "solución"?
Piotr Dobrogost