Comment puis-je changer la langue de sortie de la commande de ma langue maternelle en anglais pour pouvoir poser ma question Ask Ubuntu avec une sortie de commande en anglais (messages d'erreur)?
export LC_ALL=C
est suffisant. Toutes les commandes suivantes seront en anglais.
Plus d'informations: Qu'est-ce que "LC_ALL = C" fait?
Si vous souhaitez revenir à la langue maternelle, désélectionnez la variable LC_ALL
:
unset LC_ALL
Voici ma fonction bash pour basculer entre les paramètres régionaux DE et EN.
Vous pouvez étendre ce code avec vos langues préférées. Pour utiliser ceci, mettez-le dans votre ~/.bashrc
(ou ~/.bash_profile
) -
Appelez-le avec _configure_locale EN
pour passer en 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 changer les 3 variables d’environnement LC_ALL
, LANG
, LANGUAGE
afin d’éviter les erreurs de comportement de certains programmes.
É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'
Ouvrir un terminal Ctrl+Alt+T et type:
LANG=en_US.UTF-8 bash
o :
LC_ALL=C bash
Maintenant, la sortie du terminal est en anglais. Vous pouvez le vérifier avec locale
name__.
Il est possible de faire une commande avec un permanent alias
name __ . 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'
o :
alias basheng='LC_ALL=C bash'
Redémarrez le shell Bash. Vous avez maintenant la commande basheng
name__. Tapez-le dans le Bash pour obtenir un Bash Shell anglais. Pour quitter le shell anglais, tapez exit
name__.
Source:
Ceci est configuré via les paramètres locale , qui peuvent être définis via une variable d'environnement. Il y a quatre couches de variables; le premier qui est défini est prioritaire:
LANGUAGE
- ne l'utilisez pas, c'est rarement utile et peut causer des bugs. Malheureusement, certaines versions d’Ubuntu le configurent, vous devrez donc peut-être le désactiver.LC_ALL
- remplace les paramètres spécifiques à la catégorie, destinés principalement aux programmes qui veulent s'exécuter dans les paramètres régionaux par défaut. Non destiné à être utilisé comme paramètres globaux.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 "ordinaires", avec tous les messages non traduits, les formats d’heure et de nombre 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 À quoi dois-je définir mes paramètres régionaux et quelles en sont les conséquences? pour un aperçu plus détaillé des paramètres régionaux.
dans votre ~/.bashrc
unset LC_ALL
export LC_MESSAGES=C
puis
source ~/.bashrc
Vérifie ça
$ 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ésarmer d'abord?
LC_ALL Remplace les paramètres individuels de LC_ *: si LC_ALL est défini, aucun des éléments ci-dessous n'a d'effet.
Le moyen le plus simple consiste à ouvrir le terminal en appuyant sur Alt + F2 et en exécutant cette commande:
env LANGUAGE=en gnome-terminal
Terminé.