Heim  >  Artikel  >  Betrieb und Instandhaltung  >  Beim Ausführen von in Windows geschriebenen Dateien unter Linux werden verstümmelte Zeichen angezeigt

Beim Ausführen von in Windows geschriebenen Dateien unter Linux werden verstümmelte Zeichen angezeigt

王林
王林Original
2019-12-03 11:43:303017Durchsuche

Beim Ausführen von in Windows geschriebenen Dateien unter Linux werden verstümmelte Zeichen angezeigt

Frage:

Kopieren Sie die in Matlab unter Windows geschriebene Codedatei (.m) nach Linux (Ubuntu), und die Kommentare sind vorhanden Chinesisch Das ist alles Kauderwelsch und umgekehrt ist es das gleiche Problem.

Grund:

Die unter Windows verwendete Standardkodierung ist GB2312, und die unter Linux verwendete Standardkodierung ist UTF-8. Daher handelt es sich bei dem unter Windows generierten Code um eine GB2312-Kodierung, die unter Linux natürlich als verstümmelter Code erkannt wird.

Empfohlene kostenlose Video-Tutorials: Linux-Video-Tutorials

Lösung:

Transkodieren Sie das Dateikodierungsformat direkt.

Verwenden Sie den Befehl iconv unter Linux, um die Kodierung der Datei zu ändern:

test1.m wird von GB2312 in UTF-8 konvertiert (der Code von Matlab unter Windows läuft unter Linux)

iconv  -f  GB2312  -t  UTF-8  test1.m  -o  test1.m

test2.m wird von UTF-8 nach GB2312 konvertiert (der Code von Matlab unter Linux läuft unter Windows)

iconv -f  UTF-8  -t  GB2312  test2.m  -o  test2.m

Wenn zu viele Dateien vorhanden sind und eine Stapelverarbeitung erforderlich ist, können Sie dies tun Verwenden Sie das wie folgt geschriebene Shell-Skript, um die Kodierung stapelweise zu konvertieren.

Gebrauchsanweisung: Platzieren Sie das Skript in dem Ordner, der konvertiert werden muss, und führen Sie das Skript aus, um alle Dateien im aktuellen Verzeichnis und seinen Unterverzeichnissen in die angegebene Kodierungsmethode zu konvertieren.

Die Ausführung ist wie folgt:

Konvertieren von GB2312 nach UTF-8

./convertMatlab.sh  win

Konvertieren von UTF-8 nach GB2312

./convertMatlab.sh  linux

Tipp: Normale Benutzer Sie haben keine Ausführungsberechtigungen. Sie müssen chmod +x convertMatlab.sh verwenden, um die Ausführungsberechtigungen zu erhöhen.

Empfohlene verwandte Artikel und Tutorials: Linux-Tutorial

Das obige ist der detaillierte Inhalt vonBeim Ausführen von in Windows geschriebenen Dateien unter Linux werden verstümmelte Zeichen angezeigt. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn