本篇文章參考自 G. T. Wang的文章 , 以及 samwhelp/book-ubuntu-qna 此兩篇應該是參考自Ubuntu社群討論區: 解壓縮zip檔,產生亂碼,如何解決的心得
因為常常遇到
所以乾脆記錄下來
自己忘記也可以翻找
常常在Windows壓縮zip檔案後
拿到Linux環境解壓縮會是亂碼
因為Windows利用Big5編碼將中文檔名壓縮
解壓縮時通常是用UTF-8的編碼解壓縮
因為編碼不一樣所以解壓縮出來的檔名就變成亂碼
目前看到有兩種作法
(以下用Debian系列(Debian, Ubuntu, Mint, Lubuntu...)的系統做示範)
1. 第一種作法比較簡單直接用unzip設定編碼類型
首先先確定已經安裝了unzip
unzip -h
如果出現command not found 就安裝一下
sudo apt install unzip
安裝好後利用以下指令確認編碼是不是Big5
unzip -O big5 -l <target file>
target file請輸入想要解壓縮的檔案名稱
-l 代表示查看檔案內容而不解壓縮
如果可以看見正確的中文檔名代表的確是用big5編碼的
接下來就可以使用
unzip -O big5 <target file>
來解壓縮檔案
2. 另外也可以用convmv這個套件來將big5編碼的檔名轉換程UTF8
首先一樣確認convmv有無安裝
convmv --help
如果出現Command not found就安裝一下
sudo apt-get install convmv
利用unzip解壓縮zip檔為C語言編碼
LANG=C unzip <target file>
LANG=C代表使用C語言的 ASCII code方式編碼
(也可以把LANG=C 改成 LANG=zh_TW.Big-5)
target file為你要解壓縮的檔案名稱
解壓縮完之後再用convmv來轉換編碼
convmv -f big5 -t utf8 -r --notest *
訂閱:
張貼留言 (Atom)
Go lang 學習筆記 - 17 Pointers
``` package main import "fmt" func zeroval(n int) { n = 0 } func zeroptr(n *int) { *n = 0 } func main() { ...
-
因為不可能整個OS全部用 binary 刻出來(是可以 但我不想XD) 所以用點進階的東西來幫助我們 所以接下來要用 x86 架構的 assembly 來寫 因為向後相容性的關係 所以一開始載入 OS 會是 16-bit mode (查了OSDev的 wiki page 說又...
-
``` package main import ( "fmt" "time" ) func main() { i := 2 switch i { case ...
-
由於網路上幾乎找不到關於libchewing原始程式碼的介紹 然後我又對於這個每天都會用到的輸入法有興趣 (想修掉一些bug) 所以就一邊trace code一邊把一些心得寫成文章記錄下來 目前沒有規劃多久出一篇 也沒有規劃要寫多久 一切隨緣看心情 哈哈
沒有留言:
張貼留言