Changer le langage de sortie de commande de la langue maternelle à l'anglais

70

Comment puis-je basculer le langage de sortie de commande de ma langue maternelle vers l'anglais, afin de pouvoir poster ma question Ask Ubuntu avec une sortie de commande en anglais (messages d'erreur)?

    
posée BuZZ-dEE 05.03.2013 - 14:36
la source

7 réponses

59

export LC_ALL=C suffit. Toutes les sorties de commandes ultérieures seront en anglais.

Plus d'informations: Que fait "LC_ALL = C"?

Si vous souhaitez revenir au langage natif, désactivez la variable LC_ALL :

unset LC_ALL
    
réponse donnée Eric Carvalho 06.03.2013 - 14:54
la source
12

fonction bash pour le terminal

Voici ma fonction bash pour basculer entre les environnements locaux DE et EN.

Vous pouvez étendre ce code avec vos langues préférées. Pour l'utiliser, placez-le dans votre ~/.bashrc (ou ~/.bash_profile ) -

Appelez-le avec _configure_locale EN pour passer à l'anglais.

function _configure_locale() { # [profile]
    local profile=${1:-EN}
    case ${profile} in
      DE|DE_DE|de_DE)
          LC_ALL="de_DE.UTF-8"
          LANG="de_DE.UTF-8"
          LANGUAGE="de_DE:de:en_US:en"
          ;;
      EN|EN_US|en|en_US)
          LC_ALL="en_US.UTF-8"
          LANG="en_US.UTF-8"
          LANGUAGE="en_US:en"
          ;;
      *)
          echo "ALERT" "${FUNCNAME}: unknown profile '${profile}'"
          ;;
      esac
      LC_PAPER="de_DE.UTF-8"; # independent from locale
      LESSCHARSET="utf-8";    # independent from locale
      MM_CHARSET="utf-8"      # independent from locale
      echo "locale settings" "${LANG}";
      export LC_ALL LANG LANGUAGE LC_PAPER LESSCHARSET MM_CHARSET
}

En général, je suggère de modifier les 3 variables d'environnement LC_ALL , LANG , LANGUAGE pour éviter les comportements malveillants de certains programmes.

Adaptation à votre langue

Étendre le code à votre langue maternelle est assez simple. Vous pouvez trouver les valeurs nécessaires en appelant la commande suivante

env |egrep -e 'LC_ALL|LANG'
    
réponse donnée H.-Dirk Schmitt 05.03.2013 - 14:45
la source
6

Ouvrez un terminal Ctrl + Alt + T et tapez:

LANG=en_US.UTF-8 bash

ou :

LC_ALL=C bash

Maintenant, la sortie du terminal est en anglais. Vous pouvez le vérifier avec locale .

Il est possible d’effectuer une commande à cet effet avec un permanent alias . Ouvrez le fichier .bashrc avec votre éditeur préféré et insérez-y le code suivant:

alias basheng='LANG=en_US.UTF-8 bash'

ou :

alias basheng='LC_ALL=C bash'

Redémarrez le shell Bash. Maintenant, vous avez la commande basheng . Tapez-le dans le Bash pour obtenir un shell Bash anglais. Pour quitter le shell anglais, tapez exit .

Source:

réponse donnée BuZZ-dEE 05.03.2013 - 14:36
la source
5

Ceci est configuré via les paramètres locale , qui peuvent être définis via la variable d’environnement. Il y a quatre couches de variables; le premier défini est prioritaire:

  • LANGUAGE - ne pas utiliser c'est rarement utile et peut causer des bugs. Malheureusement, certaines versions d'Ubuntu l'ont configurée, vous devrez donc peut-être la désactiver.
  • LC_ALL - remplace les paramètres spécifiques à la catégorie, principalement destinés à être utilisés par les programmes qui souhaitent s'exécuter par défaut. Non destiné à être utilisé comme paramètres globaux.
  • Variables spécifiques à une catégorie commençant par LC_ : LC_CTYPE , LC_MESSAGES , LC_TIME , ....
  • LANG - définit les paramètres régionaux par défaut pour toutes les catégories, destinés à être utilisés dans les paramètres utilisateur globaux.

Les paramètres régionaux "plain", avec tous les messages non traduits, les formats de date et d’heure par défaut, ASCII en tant que jeu de caractères, etc. sont appelés C . Cette locale est présente sur tous les systèmes.

Ainsi, pour exécuter un programme avec des messages en anglais, exécutez

unset LANGUAGE; LC_MESSAGES=C myprogram --option

ou

unset LANGUAGE
export LC_MESSAGES=C
myprogram --option
myotherprogram

Pour exécuter un programme avec toute la localisation désactivée, exécutez

env -u LANGUAGE LC_ALL=C myprogram --option

mais attention, cela change le codage des caractères en ASCII (donc pas d'Unicode, latin-1, etc.).

Voir Que dois-je définir pour mes paramètres régionaux et quelles en sont les implications? pour une présentation plus détaillée des paramètres régionaux.

    
réponse donnée Gilles 02.11.2014 - 16:16
la source
1

La méthode la plus simple consiste à ouvrir le terminal en appuyant sur Alt + F2 et en exécutant cette commande:

env LANGUAGE=en gnome-terminal
    
réponse donnée Gunnar Hjalmarsson 01.11.2014 - 00:53
la source
1

dans votre ~/.bashrc

unset LC_ALL
export LC_MESSAGES=C

alors

source ~/.bashrc

Vérifiez-le

$ locale
LANG=pl_PL.utf8
LANGUAGE=
LC_CTYPE="pl_PL.utf8"
LC_NUMERIC="pl_PL.utf8"
LC_TIME="pl_PL.utf8"
LC_COLLATE="pl_PL.utf8"
LC_MONETARY="pl_PL.utf8"
LC_MESSAGES=C
LC_PAPER="pl_PL.utf8"
LC_NAME="pl_PL.utf8"
LC_ADDRESS="pl_PL.utf8"
LC_TELEPHONE="pl_PL.utf8"
LC_MEASUREMENT="pl_PL.utf8"
LC_IDENTIFICATION="pl_PL.utf8"
LC_ALL=

Pourquoi désélectionner d’abord?

  

LC_ALL Remplace les paramètres LC_ * individuels: si LC_ALL est défini, aucun   les éléments ci-dessous ont un effet.

lien

    
réponse donnée rofrol 29.08.2016 - 15:27
la source
0
  1. Cliquez sur l'icône d'engrenage à gauche (paramètres système sur le panneau Unity)
  2. Cliquez sur Language Support
  3. Sélectionner les formats régionaux
  4. Définissez vos "Afficher les nombres, les dates et le montant de la devise ..." en anglais.
  5. Déconnectez-vous de la session et reconnectez-vous (obligatoire!)

Fait.

    
réponse donnée Robin Hsu 15.08.2018 - 04:50
la source

Lire d'autres questions sur les étiquettes