從windows上傳到linux的檔案或者目錄,在linux系統中顯示為亂碼。雖然將linux的env設定了lang=en_us.utf-8,並且本地的shell客戶端編碼也設定成utf-8,但在shell中(或通過http訪問),仍是亂碼……
原因在於,windows 的檔名中文編碼預設為gbk,壓縮或者上傳後,檔名還會是gbk編碼,而linux中預設檔名編碼為utf8,由於編碼不一致所以導致了檔名亂碼的問題,解決這個問題需要對檔名進行轉碼。
wget -ivh convmv-1.15-1.el6.rf.noarch.rpm/usr/bin/convmv -f gbk -t utf-8 -r --notest /home/wwwroot常用引數:
-r 遞迴處理子資料夾
–notest 真正進行操作,預設情況下是不對檔案進行真實操作
–list 顯示所有支援的編碼
–unescap 可以做一下轉義,比如把%20變成空格
-i 互動模式(詢問每乙個轉換,防止誤操作)
linux下有許多方便的小工具來轉換編碼:
文字內容轉換 iconv
檔名轉換 convmv
***標籤轉換 python-mutagen
上傳linux檔案中文亂碼問題
最近做壓測的時候,上傳linux伺服器的csv檔案顯示亂碼。我的檔案在windows環境下,顯示正常。使用notepad 開啟檢視內容編碼是中文編碼,這個檔案上傳到linux,開啟後顯示亂碼。這是因為在windos上預設編碼和linux的預設編碼不一致原因引起的。windows預設編碼一般是gbk或...
上傳檔案到linux亂碼問題
由於linux系統編碼一般設定為utf 8,而中文windows下通常預設編碼是gbk,因此經常需要將檔名或檔案內容編碼進行轉換,檔名編碼轉換軟體 convmv yum install convmv 使用此命令安裝 convmv f gbk t utf 8 r notest filename 使用此...
解決通過zuul上傳檔案,檔名中文亂碼問題
最近這個問題一直困惑著專案組。檔案上傳,請求不經過zuul的時候,一切正常。沒有出現亂碼問題。一旦請求經過zuul,上傳後獲得的檔名,就會出現中文亂碼問題。中文會變成?下面貼出來我zuul的部分配置 zuul sensitive headers access control allow origin...