❶ linux怎麼看文件的字元集編碼
Linux 下查看文件字元編碼和轉換編碼 如果你需要在 Linux 中操作 windows 下的文件,那麼你可能會經常遇 到 文 件 編 碼 轉 換 的 問 題 。 Windows 中 默 認 的 文 件 格 式 是 GBK(gb2312),而 Linux 一般都是 UTF-8。下面介紹一下,在 Linux 中如何查看文件的編碼及如何進行對文件進行編碼轉換。
一,查看文件編碼: 在 Linux 中查看文件編碼可以通過以下幾種方式:
1.在 Vim 中可以直接查看文件編碼 :set fileencoding 即可顯示文件編碼格式。 如果你只是想查看其它編碼格式的文件或者想解決用 Vim 查看文件亂 碼的問題,那麼你可以在 ~/.vimrc 文件中添加以下內容: set encoding=utf-8 fileencodings=ucs-bom,utf-8,cp936 這樣, 就可以讓 vim 自動識別文件編碼 (可以自動識別 UTF-8或者 GBK 編碼的文件) ,其實就是依照 fileencodings 提供的編碼列表嘗試,如 果沒有找到合適的編碼,就用 latin-1(ASCII)編碼打開。
2. enca (如果你的系統中沒有安裝這個命令,可以用 sudo yum install -y enca 安裝 )查看文件編碼 $ enca filename filename: Universal transformation format 8 bits; UTF-8 CRLF line terminators 需要說明一點的是,enca 對某些 GBK 編碼的文件識別的不是很好,識 別時會出現: Unrecognized encoding
二,文件編碼轉換
1.在 Vim 中直接進行轉換文件編碼,比如將一個文件轉換成 utf-8格式 :set fileencoding=utf-8
2. iconv 轉換,iconv 的命令格式如下:輸入/輸出格式規范: -f, --from-code=名稱 原始文本編碼 -t, --to-code=名稱 輸出編碼 信息: www.Svn8.Com -l, --list 列舉所有已知的字元集 輸出控制: -c 從輸出中忽略無效的字元 -o, --output=FILE 輸出文件 Svn8.Com -s, --s ilent 關閉警告 --verbose 列印進度信息 -?, --help 給出該系統求助列表 --usage 給出簡要的用法信息 -V, --version 列印程序版本號 例子: iconv -f utf-8 -t gb2312 aaa.txt >bbb.txt 這個命令讀取 aaa.txt 文件,從 utf-8編碼轉換為 gb2312編碼,其輸出定向到 bbb.txt文件。 iconv -f encoding -t encoding inputfile 比如將一個 UTF-8 編碼的文件轉換成 GBK 編碼 iconv -f GBK -t UTF-8 file1 -o file2
3. enconv 轉換文件編碼 比如要將一個 GBK 編碼的文件轉換成 UTF-8編碼,操作如下 enconv -L zh_CN -x UTF-8 filename