linux下中文檔名亂碼解決

2022-05-25 01:45:11 字數 630 閱讀 9518

在windows上使用ftp上傳檔案到linux上,中文名稱在linux系統中顯示為亂碼。雖然將linux的env設定了lang=en_us.utf-8,並且本地的shell客戶端編碼也設定成utf-8,但在shell中(或通過http訪問),仍是亂碼……

原因在於,windows 的檔名中文編碼預設為gbk,壓縮或者上傳後,檔名還會是gbk編碼,而linux中預設檔名編碼為utf8,由於編碼不一致所以導致了檔名亂碼的問題,解決這個問題需要對檔名進行轉碼。

yum install convmv 

convmv -f gbk -t utf-8 -r --notest /home/要操作的檔案

常用引數:

-r 遞迴處理子資料夾

–notest 真正進行操作,預設情況下是不對檔案進行真實操作

–list 顯示所有支援的編碼

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

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

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

文字內容轉換 iconv

檔名轉換 convmv

***標籤轉換 python-mutagen

參考原文:

linux下中文檔名亂碼解決

在windows上使用ftp上傳檔案到linux上,中文名稱在linux系統中顯示為亂碼。雖然將linux的env設定了lang en us.utf 8,並且本地的shell客戶端編碼也設定成utf 8,但在shell中 或通過http訪問 仍是亂碼 原因在於,windows 的檔名中文編碼預設為g...

Linux 中文檔名亂碼解決 FTP檔名亂碼

linux下中文顯示亂碼是因為linux中使用的是utf 8編碼 windows使用的是gbk編碼 可以在linux中使用convmv工具來對檔名進行轉碼 當然如果檔名轉碼為utf 8後 在windwos資源管理器中使用ftp進行檢視時就會亂碼 可以把liunx中的檔案轉碼成gbk後在windows...

linux 中文檔名亂碼解決方法

在windows上使用ftp上傳檔案到linux上,中文名稱在linux系統中顯示為亂碼。雖然將linux的env設定了lang en us.utf 8,並且本地的shell客戶端編碼也設定成utf 8,但在shell中 或通過http訪問 仍是亂碼 原因在於,windows 的檔名中文編碼預設為g...