Ich richte das CPAN-Modul für Perl auf CentOs 5 ein und eine der Fragen lautet: Unterstützt Ihr Terminal UTF-8? (umschrieben). Wie finde ich es heraus?
Ich richte das CPAN-Modul für Perl auf CentOs 5 ein und eine der Fragen lautet: Unterstützt Ihr Terminal UTF-8? (umschrieben). Wie finde ich es heraus?
Antworten:
Wirklich, die todsichere Art zu testen ist, eine Textdatei herunterzuladen und sie im Terminal zu speichern und zu prüfen, ob alles in Ordnung ist.
oder kompilieren Sie das Terminal neu, indem Sie die Unicode-Option aktivieren (vorausgesetzt, es verfügt über eine).
Wie sehen $ TERM und $ LANG aus?
Geben Sie dies in Ihr Terminal ein:
echo -e '\xe2\x82\xac'
Wenn Ihr Terminal UTF-8 unterstützt, wird das Euro-Zeichen ausgegeben:
€
Der lahmste Weg: Folge und überprüfe die Ausgabe. Wenn das Terminal UTF-8 anzeigt, ist dies ein großes O mit Zirkumflex.
perl -le 'print "\x{c3}\x{94}"'
perl -CO -le 'print "\x{d4}"'
Der sicherste Weg ist die Verwendung des Befehls 'locale'. Es werden alle verschiedenen Variablen ausgegeben, die bestimmen, welcher Zeichensatz verwendet werden soll. Dies ist zum Beispiel meine Ausgabe auf RHEL5.3, die standardmäßig nur UTF-8 verwendet.
LANG="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_CTYPE="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_ALL=
curl http://www.cl.cam.ac.uk/~mgk25/ucs/examples/UTF-8-demo.txt
oder
wget -O - http://www.cl.cam.ac.uk/~mgk25/ucs/examples/UTF-8-demo.txt
Dies erfordert offensichtlich wget
oder curl
.
UTF=$(echo -e "\u263A")
if [[ ! "$UTF" =~ "A" ]] ; then
echo -n "UNICODE here!"
fi
echo
geprüft , ob das eingebaute unterstützt \u
.