centos下中文文件名顯示亂碼怎么辦

centos下中文文件名顯示亂碼怎么辦

問題:

windows上使用ftp上傳文件到linux上,中文名稱在Linux系統中顯示為亂碼。雖然將Linux的env設置了LANG=en_US.UTF-8,并且本地的Shell客戶端編碼也設置成UTF-8,但在Shell中(或通過http訪問)仍是亂碼。

原因:

Windows 的文件名中文編碼默認為GBK,壓縮或者上傳后,文件名還會是GBK編碼,而Linux中默認文件名編碼為UTF8,由于編碼不一致所以導致了文件名亂碼的問題,解決這個問題需要對文件名進行轉碼。

(推薦教程:centos使用教程

解決方法如下:

1、安裝convmv

yum?install?convmv

2、轉碼

convmv?-f?gbk?-t?utf-8?-r?--notest?/home/wwwroot

常用參數介紹:

-r 遞歸處理子文件夾

–notest 真正進行操作,默認情況下是不對文件進行真實操作

–list 顯示所有支持的編碼

–unescap 可以做一下轉義,比如把%20變成空格

-i 交互模式(詢問每一個轉換,防止誤操作)

擴展:

linux下有許多方便的小工具來轉換編碼:

文本內容轉換:iconv

文件名轉換:convmv

mp3標簽轉換:python-mutagen

相關視頻教程推薦:centos使用教程

以上就是

? 版權聲明
THE END
喜歡就支持一下吧
點贊15 分享