Unicode/UTF-8-Probleme in SSH-Sitzungen mit Ubuntu Server 16.04

Unicode/UTF-8-Probleme in SSH-Sitzungen mit Ubuntu Server 16.04

Ich habe eine neue Ubuntu Server 16.04-Installation und teste jetzt, wie sie mit Unicode-Zeichen umgeht:

  • Ich habe einen Dateinamen, der ein Unicode-Zeichen enthält: testā.txt. Wenn ich ihn mit einem Tabulator aufnehme, also $ rm tes[tab], wird dem Befehl ein korrekter Dateiname entnommen.
  • Wenn ich das tue $ ls, sehe ich test??.txtin der Dateiliste
  • Wenn ich dem Dateiinhalt mit Unicode-Zeichen hinzufüge $ echo āāā > test.txtund dann ausführe $ cat test.txt, erhalte ich die korrekte Ausgabe.
  • Wenn ich die Datei jedoch im Nano-Editor öffne, sieht der Inhalt folgendermaßen aus: ^ ^ ^.
  • Der Hex-Dump $ xxd test.txtzeigt, dass die Unicode-Zeichen korrekt in der Datei gespeichert sind:c481 c481 c481 0a

Das von mir verwendete Terminalprogramm (Guake) hatte nie Probleme mit Unicode-Zeichen. In einer typischen lokalen Terminalsitzung gibt es keines der oben beschriebenen Probleme.

Anrufen env | sort | grep -E '^(LANG(UAGE)?|LC_\w*)='gibt

LANG=en_US.UTF-8
LANGUAGE=en_US:en
LC_ADDRESS=lv_LV.UTF-8
LC_IDENTIFICATION=lv_LV.UTF-8
LC_MEASUREMENT=lv_LV.UTF-8
LC_MONETARY=lv_LV.UTF-8
LC_NAME=lv_LV.UTF-8
LC_NUMERIC=lv_LV.UTF-8
LC_PAPER=lv_LV.UTF-8
LC_TELEPHONE=lv_LV.UTF-8
LC_TIME=lv_LV.UTF-8

Kann dies mit den Gebietsschemaeinstellungen des Servers behoben werden? Oder gibt es einen Parameter, den ich beim Starten der SSH-Sitzung verwenden sollte?

verwandte Informationen