從Linux往windows拷貝文件或者從windows往Linux拷貝文件,有時會出現中文文件名亂碼的情況,出現這種問題的原因是因爲,windows的文件名中文編碼默認爲GBK,而Linux中默認文件名編碼爲UTF8,由於編碼不一致,所以導致了文件名亂碼的問題,解決這個問題需要對文件名進行轉碼。
convmv -f 源編碼 -t 新編碼 [選項] 文件名
常用參數:
-r 遞歸處理子文件夾 --notest 真正進行操作,請注意在默認情況下是不對文件進行真實操作的,而只是試驗。 --list 顯示所有支持的編碼 --unescap 可以做一下轉義,比如把%20變成空格
比如我們有一個utf8編碼的文件名,轉換成GBK編碼,命令如下:
convmv -f UTF-8 -t GBK --notest utf8編碼的文件名
修改文件編碼iconv,使用格式
iconv -f "原編碼" -t "目標編碼" "源文件名" -o "生成新的文件"