linux下有時需要對文字檔案的編碼格式進行轉換,下面是在專案中用過的一些shell命令。
要想對文字內容的字元編碼進行轉換,具體引數含義
-j : 轉換為 jis 編碼(iso-2022-jp),預設linux中轉換成window : nkf -sxlw-e : 轉換為 euc 編碼
-s : 轉換為 shift-jis 編碼
-w : 轉換為 utf-8 編碼(無bom)
-lu : 轉換為 unix 換行格式(lf)
-lw : 轉換為 windows 換行格式(crlf)
-lm : 轉換為 macintosh 換行格式(cr)
-g(--guess) : 自動判斷編碼並顯示
--version : 顯示版本
--help : 顯示幫助
nkf -swlw
window轉換成linux : nkf -wxlu
對檔案內容編碼轉換(從utf-8轉為shift-jis)並儲存替換原檔案:nkf -slw -overwrite $
2.使用iconv命令也可以轉換文字編碼,格式為:iconv -f encoding -t encoding inputfile -o outputfile
比如將乙個utf-8編碼的檔案轉換成gbk編碼的檔案
iconv -c -f utf-8 -t gbk file1 -o file2
-f:轉換前編碼;-t:轉換後編碼;-c:表示從輸出中忽略無效的字元;-o:輸出檔案路徑,另外需要注意inputfile和outputfile兩個檔名不能一樣
3.檔名編碼轉換convmv
有時從window使用者上傳的檔名是gbk編碼的,在linux下看到的檔名是亂碼,需要轉換。
convmv -f gbk -t utf-8 --notest ./*.txt
--notest:不加上這個引數就不會真正轉換,另外加上-r可以對目錄下的檔名進行遞迴轉換
參照資料:
1. mpu linux下配置安裝nkf
2. wangxianshou
3. wangxianshou
(編碼轉換)轉換檔案編碼
目錄 1 轉換編碼種類 2 轉編碼操作步驟 1 轉換編碼種類 可轉為 utf 8 最常用 ansi unicode unicode big endian 這四類編碼 2 轉換編碼操作步驟 1 將檔案以記事本方式開啟 注意 如果不可以請先將檔案轉換為 csv 檔案,再以記事本開啟 2 點選記事本左上方...
檔案編碼轉換
檔案編碼轉換 class transcoding 設定檔案路徑 param filepath public function setfilepath filepath return false 取得檔案路徑 public function getfilepath 檔案編碼轉換 param file ...
檔案編碼轉換
如果你需要在linux中操作windows下的檔案,那麼你可能會經常遇到檔案編碼轉換的問題。windows中預設的檔案格式是 gbk gb2312 而linux一般都是utf 8。下面介紹一下,在linux中如何檢視檔案的編碼及如何進行對檔案進行編碼轉換。檢視檔案編碼 在linux中檢視檔案編碼可以...