1、iconv命令來轉(zhuǎn)換文件的編碼,格式:

尖草坪ssl適用于網(wǎng)站、小程序/APP、API接口等需要進行數(shù)據(jù)傳輸應(yīng)用場景,ssl證書未來市場廣闊!成為創(chuàng)新互聯(lián)建站的ssl證書銷售渠道,可以享受市場價格4-6折優(yōu)惠!如果有意向歡迎電話聯(lián)系或者加微信:18980820575(備注:SSL證書合作)期待與您的合作!
iconv -f 原本的編碼格式 -t 要轉(zhuǎn)換成的編碼 文件名 -o 新文件名
2、例如:
iconv -f gb2312 -t utf8 a.txt -o utf8.txt
3、vim 文件名.txt
:set fileencoding
:set fenc
查看現(xiàn)在文本的編碼
:set fenc=編碼
轉(zhuǎn)換當(dāng)前文本的編碼為指定的編碼
:set encoding=編碼
:set enc=編碼
以指定的編碼顯示文本,但不保存到文件中。
輸入 :e ++enc=gbk 強制用gbk打開
輸入 :w ++enc=utf8 轉(zhuǎn)換到utf8保存。
4、可以使用 file 命令,并添加 -i 或 --mime 參數(shù)來查看一個文件的字符編碼
file -i a.txt
查看文件編碼
在Linux中查看文件編碼可以通過以下幾種方式:
1.在Vim中可以直接查看文件編碼
:set fileencoding
即可顯示文件編碼格式。
如果你只是想查看其它編碼格式的文件或者想解決用Vim查看文件亂碼的問題,那么你可以在
~/.vimrc 文件中添加以下內(nèi)容:
set encoding=utf-8 fileencodings=ucs-bom,utf-8,cp936
這樣,就可以讓vim自動識別文件編碼(可以自動識別UTF-8或者GBK編碼的文件),其實就是依照fileencodings提供的編碼列表嘗試,如果沒有找到合適的編碼,就用latin-1(ASCII)編碼打開。
文件編碼轉(zhuǎn)換
1.在Vim中直接進行轉(zhuǎn)換文件編碼,比如將一個文件轉(zhuǎn)換成utf-8格式
:set fileencoding=utf-8
2. iconv 轉(zhuǎn)換,iconv的命令格式如下:
iconv -f encoding -t encoding inputfile
比如將一個UTF-8 編碼的文件轉(zhuǎn)換成GBK編碼
iconv -f GBK -t UTF-8 file1 -o file2
iconv -f gbk -t utf8 linux常用命令.txt linux常用命令.txt.utf8
文件名編碼轉(zhuǎn)換:
從Linux 往 windows拷貝文件或者從windows往Linux拷貝文件,有時會出現(xiàn)中文文件名亂碼的情況,出現(xiàn)這種問題的原因是因為,windows的文件名 中文編碼默認(rèn)為GBK,而Linux中默認(rèn)文件名編碼為UTF8,由于編碼不一致,所以導(dǎo)致了文件名亂碼的問題,解決這個問題需要對文件名進行轉(zhuǎn)碼。
在Linux中專門提供了一種工具convmv進行文件名編碼的轉(zhuǎn)換,可以將文件名從GBK轉(zhuǎn)換成UTF-8編碼,或者從UTF-8轉(zhuǎn)換到GBK。
首先看一下你的系統(tǒng)上是否安裝了convmv,如果沒安裝的話用:
yum -y install convmv
安裝。
下面看一下convmv的具體用法:
convmv -f 源編碼 -t 新編碼 [選項] 文件名
常用參數(shù):
-r 遞歸處理子文件夾
--notest 真正進行操作,請注意在默認(rèn)情況下是不對文件進行真實操作的,而只是試驗。
--list 顯示所有支持的編碼
--unescap 可以做一下轉(zhuǎn)義,比如把%20變成空格
比如我們有一個utf8編碼的文件名,轉(zhuǎn)換成GBK編碼,命令如下:
convmv -f UTF-8 -t GBK --notest utf8編碼的文件名
這樣轉(zhuǎn)換以后"utf8編碼的文件名"會被轉(zhuǎn)換成GBK編碼(只是文件名編碼的轉(zhuǎn)換,文件內(nèi)容不會發(fā)生變化)
在Linux中轉(zhuǎn)換文件的編碼可以使用iconv命令,它的使用很簡單的,比如下面這條命令將GB2312編碼的文件轉(zhuǎn)換成UTF-8編碼的文件:
iconv -f gb2312 -t utf8 mygb2312.txt -o myutf8.txt
這個例子中mygb2412.txt是要轉(zhuǎn)換的文件,myutf8.txt是轉(zhuǎn)換后的新文件。 iconv命令最常用的形式就是上面這條命令,它所使用的三個選項解釋如下:
-f選項:就是from的意思,后面跟原來的編碼格式
-t選項:英文to的意思,后面跟轉(zhuǎn)換后的新編碼
-o選項:指定輸出文件,就是轉(zhuǎn)換編碼后的新文件的文件名,沒有這個參數(shù)時新文件會將原來的文件覆蓋。
其實還可以用幾乎每個Linux發(fā)行版都自帶的gedit這個軟件打開需要轉(zhuǎn)換編碼的文件,然后選擇另存為功能,在保存文件對話框中選擇UTF-8編碼,再輸入一個新文件名點擊保存就轉(zhuǎn)換出一個UTF-8編碼的文件了。
linux下文件編碼格式轉(zhuǎn)換方法(gb18030/utf-8)
在 Linux 做開發(fā)或者系統(tǒng)管理遇到亂碼是經(jīng)常的事情,主要windows下中文的默認(rèn)編碼是bg2312,而 linux下是utf-8。很多時候 涉及到和windows平臺系統(tǒng)的通信免不了編碼的轉(zhuǎn)化,可能大部分人都用iconv庫函數(shù)(包含在glib中)和iconv命令來執(zhí)行編碼轉(zhuǎn)換,即:
iconv -f gb18030 -t utf-8 file1.txt -o file2.txt
說實話這個命令不好使,一方面容易重復(fù)轉(zhuǎn)換,另一方面不支持通配符,無法成批轉(zhuǎn) 換,文件少了還好說,要是一大堆文件豈不是要累死?
今天我要推薦的是另一個 Shell 下編碼轉(zhuǎn)換工具enca。用它不僅可以轉(zhuǎn)換編碼,還可以查看文件的原始編碼,而且還支持成批轉(zhuǎn)換。使用上也比iconv方便一些。安裝enca很簡單,一般用源安裝就行了,enca用法如下:
enca -L 當(dāng)前語言 文件名
enca -L zh_CN file //檢查文件的編碼
enca -L 當(dāng)前語言 -x 目標(biāo)編碼 文件名
enca -L zh_CN -x UTF-8 file //將文件編碼轉(zhuǎn)換為”UTF-8″編碼
enca -L zh_CN -x UTF-8 file1 file2 //如果不想覆蓋原文件可以這樣
除了有檢查文件編碼的功能以外,”enca”還有一個好處就是如果文件本來就是你要轉(zhuǎn)換的那種編碼,它不會報錯,還是會print出結(jié)果來, 而”iconv”則會報錯。這對于腳本編寫是比較方便的事情。
網(wǎng)站標(biāo)題:linux中文轉(zhuǎn)碼命令 linux 轉(zhuǎn)碼
文章位置:http://www.chinadenli.net/article38/dooicsp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站導(dǎo)航、商城網(wǎng)站、響應(yīng)式網(wǎng)站、服務(wù)器托管、軟件開發(fā)、定制網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)