Cambia la lingua di output del comando dalla lingua madre all'italiano

71

Come posso cambiare la lingua di output dei comandi dalla mia lingua madre all'inglese, quindi posso pubblicare la mia domanda su Ubuntu con l'output del comando inglese (messaggi di errore)?

    
posta BuZZ-dEE 05.03.2013 - 14:36

7 risposte

59

export LC_ALL=C è sufficiente. Tutti i successivi comandi saranno in inglese.

Ulteriori informazioni: Che cosa fa "LC_ALL = C"?

Se vuoi ripristinare la lingua nativa, disattiva la variabile LC_ALL :

unset LC_ALL
    
risposta data Eric Carvalho 06.03.2013 - 14:54
12

funzione bash per terminale

Questa è la mia funzione bash per passare da DE a locale EN.

Puoi estendere questo codice con le tue lingue preferite. Per utilizzarlo, inseriscilo nella tua ~/.bashrc (o ~/.bash_profile ) -

Chiamalo con _configure_locale EN per passare all'inglese.

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
}

In generale suggerisco di cambiare tutte e 3 le variabili d'ambiente LC_ALL , LANG , LANGUAGE per evitare comportamenti scorretti di alcuni programmi.

Adattamento alla tua lingua

Estendere il codice alla tua lingua nativa è abbastanza semplice. Puoi trovare i valori necessari invocando il seguente comando

env |egrep -e 'LC_ALL|LANG'
    
risposta data H.-Dirk Schmitt 05.03.2013 - 14:45
6

Apri un terminale Ctrl + Alt + T e digita:

LANG=en_US.UTF-8 bash

o :

LC_ALL=C bash

Ora l'output del terminale è in inglese. Puoi controllarlo con locale .

È possibile eseguire un comando per farlo con un permanente alias . Apri il file .bashrc con il tuo editor preferito e inserisci il seguente codice:

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

o :

alias basheng='LC_ALL=C bash'

Riavvia la shell Bash. Ora hai il comando basheng . Digitalo nel Bash per ottenere una shell Bash inglese. Per lasciare il tipo di shell inglese exit .

Fonte:

risposta data BuZZ-dEE 05.03.2013 - 14:36
5

Questo è configurato tramite le impostazioni locale , che possono essere impostate tramite la variabile di ambiente. Ci sono quattro livelli di variabili; il primo impostato ha la precedenza:

  • LANGUAGE - non utilizzare è raramente utile e può causare bug. Sfortunatamente, alcune versioni di Ubuntu lo hanno impostato, quindi potrebbe essere necessario disattivarlo.
  • LC_ALL : sovrascrive le impostazioni specifiche per categoria, destinate principalmente ai programmi che desiderano eseguire nelle impostazioni internazionali predefinite. Non inteso per essere utilizzato come impostazioni globali.
  • Variabili specifiche della categoria che iniziano con LC_ : LC_CTYPE , LC_MESSAGES , LC_TIME , ....
  • LANG : imposta le impostazioni internazionali predefinite per tutte le categorie, destinate a essere utilizzate in impostazioni utente globali.

Le impostazioni locali "semplici", con tutti i messaggi non tradotti, i formati di ora e numero predefiniti, ASCII come set di caratteri, ecc. sono chiamati C . Questa locale è presente su ogni sistema.

Pertanto, per eseguire un programma con messaggi in inglese, esegui

unset LANGUAGE; LC_MESSAGES=C myprogram --option

o

unset LANGUAGE
export LC_MESSAGES=C
myprogram --option
myotherprogram

Per eseguire un programma con tutte le localizzazioni disattivate, esegui

env -u LANGUAGE LC_ALL=C myprogram --option

ma attenzione che questo cambi la codifica dei caratteri in ASCII (quindi nessun Unicode, latin-1, ecc.).

Vedi A cosa devo impostare le mie impostazioni internazionali e quali sono le implicazioni in tal senso? per una panoramica più dettagliata delle impostazioni locali.

    
risposta data Gilles 02.11.2014 - 16:16
1

Il modo più semplice è aprire il terminale premendo Alt + F2 ed eseguendo questo comando:

env LANGUAGE=en gnome-terminal
    
risposta data Gunnar Hjalmarsson 01.11.2014 - 00:53
1

nel tuo ~/.bashrc

unset LC_ALL
export LC_MESSAGES=C

poi

source ~/.bashrc

Controllalo

$ 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=

Perché prima disinserire?

  

LC_ALL Sovrascrive le singole impostazioni LC_ *: se LC_ALL è impostato, nessuno di   il sotto ha qualche effetto.

link

    
risposta data rofrol 29.08.2016 - 15:27
0
  1. Fai clic sull'icona a forma di ingranaggio sulla sinistra (impostazioni di sistema sul pannello Unity)
  2. Fai clic sull'assistenza linguistica
  3. Seleziona formati regionali
  4. Imposta il tuo "Visualizza numeri, date e importo della valuta ..." in inglese.
  5. Esegui il logout della sessione e riconnetti (richiesto!)

Fatto.

    
risposta data Robin Hsu 15.08.2018 - 04:50

Leggi altre domande sui tag