shell檔案內容編碼轉換

2021-06-26 23:51:19 字數 1171 閱讀 6676

linux下有時需要對文字檔案的編碼格式進行轉換,下面是在專案中用過的一些shell命令。

要想對文字內容的字元編碼進行轉換,具體引數含義

-j           : 轉換為 jis 編碼(iso-2022-jp),預設

-e : 轉換為 euc 編碼

-s : 轉換為 shift-jis 編碼

-w : 轉換為 utf-8 編碼(無bom)

-lu : 轉換為 unix 換行格式(lf)

-lw : 轉換為 windows 換行格式(crlf)

-lm : 轉換為 macintosh 換行格式(cr)

-g(--guess) : 自動判斷編碼並顯示

--version : 顯示版本

--help : 顯示幫助

linux中轉換成window     :   nkf -sxlw 

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中檢視檔案編碼可以...