Problem:
Wenn Sie FTP zum Hochladen von Dateien auf Linux unter Windows verwenden, wird der chinesische Name im Linux-System als verstümmelte Zeichen angezeigt. Obwohl die Linux-Umgebung auf LANG=en_US.UTF-8 eingestellt ist und die lokale Shell-Client-Kodierung ebenfalls auf UTF-8 eingestellt ist, ist sie in der Shell immer noch verstümmelt (oder der Zugriff erfolgt über http).
Grund:
Die standardmäßige chinesische Kodierung von Dateinamen in Windows ist GBK. Nach der Komprimierung oder dem Hochladen wird der Dateiname weiterhin GBK-kodiert sein, während die standardmäßige Dateinamenkodierung in Linux UTF8 ist Aufgrund inkonsistenter Kodierung führt dies zum Problem verstümmelter Dateinamen. Um dieses Problem zu lösen, müssen die Dateinamen transkodiert werden.
(Empfohlenes Tutorial: Centos-Nutzungstutorial)
Die Lösung lautet wie folgt:
1. Installieren Sie convmv
yum install convmv
2 . Übertragungscode
convmv -f gbk -t utf-8 -r --notest /home/wwwroot
Einführung in allgemeine Parameter:
-r Unterordner rekursiv verarbeiten
–Hinweis: Die Standardeinstellung besteht darin, keine echten Vorgänge an Dateien auszuführen
–Liste zeigt alle unterstützten Kodierungen an
–unescap Sie können einige Escape-Vorgänge ausführen, z. B. %20 in ein Leerzeichen umwandeln
-i Interaktiver Modus (fragen Sie bei jeder Konvertierung nach, um Fehlbedienungen vorzubeugen)
Erweiterung:
Unter Linux gibt es viele praktische Gadgets zum Konvertieren der Kodierung:
Konvertierung von Textinhalten: iconv
Konvertierung von Dateinamen: convmv
mp3-Tag-Konvertierung: python-mutagen
Empfohlene verwandte Video-Tutorials: Linux-Video-Tutorial
Das obige ist der detaillierte Inhalt vonWas soll ich tun, wenn der chinesische Dateiname unter Centos verstümmelte Zeichen anzeigt?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!