Comment puis-je activer le support UTF-8 dans la console Linux?

En ce moment, il ressemble à ceci:

entrer la description de l'image ici

Bien sûr (c'est limité sur le nombre de glyphes, mais il semble que votre locale utilise le encoding UTF-8).

Je l'utilise pour tester:

#!/bin/sh # send character-ssortingng to enable UTF-8 mode if test ".$1" = ".off" ; then printf '\033%%@' else printf '\033%%G' fi 

et (en l'appelant "utf8"), "utf8 on" active l'enencoding.

En utilisant l'exemple donné avec pstree , voici un exemple après avoir exécuté le script (avant, le même type de sortie que dans la question):

capture d'écran après "utf8 on"

Comme indiqué dans un commentaire, il y a un script unicode_start qui fait plus , mais tout ce qui est nécessaire pour répondre à la question posée est le petit script utilisé comme exemple.

Adressage d'un commentaire différent: Au less sur mon système (et dans la capture d'écran montrée dans la question), tous les caractères utilisés par pstree sont fournis dans la police 512-glyph utilisée par défaut pour le support Unicode dans la console Linux.

Pour en savoir plus:

  • console_codes – échappement de la console Linux et séquences de contrôle
  • Dans le brouillard: Fonctionnement des fonts de la console Linux

Vérifiez que vous avez installé le package local

 dpkg -l locales 

Sinon, installez-le

 apt-get install locales 

En tant que root, tapez

 dpkg-reconfigure locales 

vous pouvez naviguer dans cette list avec les touches fléchées haut / bas, par exemple, choisissez en_US-UTF-8

éditez votre .bashrc en ajoutant les lignes suivantes:

 export LC_ALL=en_US.UTF-8 export LANG=en_US.UTF-8 export LANGUAGE=en_US.UTF-8 

Exécutez la command locale , la sortie doit être similaire à ceci ::

 LANG=en_US.UTF-8 LANGUAGE=en_US:en LC_CTYPE="en_US.UTF-8" LC_NUMERIC="en_US.UTF-8" LC_TIME="en_US.UTF-8" LC_COLLATE="en_US.UTF-8" LC_MONETARY="en_US.UTF-8" LC_MESSAGES="en_US.UTF-8" LC_PAPER="en_US.UTF-8" LC_NAME="en_US.UTF-8" LC_ADDRESS="en_US.UTF-8" LC_TELEPHONE="en_US.UTF-8" LC_MEASUREMENT="en_US.UTF-8" LC_IDENTIFICATION="en_US.UTF-8" LC_ALL=