色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

linux怎么看文本的編碼格式

張吉惟2年前14瀏覽0評論

linux怎么看文本的編碼格式?

linux下經(jīng)常遇到的編碼問題如果你需要在linux中操作windows下的文件,那么你可能會經(jīng)常遇到文件編碼轉(zhuǎn)換的問題。windows中默認的文件格式是gbk(gb2312),而linux一般都是utf-8。

查看編碼的方法

方法一:filefilename

方法二:在vim中可以直接查看文件編碼

:setfileencoding

如果你只是想查看其它編碼格式的文件或者想解決用vim查看文件亂碼的問題,那么你可以在

~/.vimrc文件中添加以下內(nèi)容:

setencoding=utf-8fileencodings=ucs-bom,utf-8,cp936

這樣,就可以讓vim自動識別文件編碼(可以自動識別utf-8或者gbk編碼的文件),其實就是依照fileencodings提供的編碼列表嘗試,如果沒有找到合適的編碼,就用latin-1(ascii)編碼打開

文件編碼轉(zhuǎn)換

多平臺方法:

iconv提供標準的程序和api來進行編碼轉(zhuǎn)換;

convert_encoding.py基于python的文本文件轉(zhuǎn)換工具;

decodeh.py提供算法和模塊來談測字符的編碼;

linux下文件編碼轉(zhuǎn)換:

方法一:

在vim中直接進行轉(zhuǎn)換文件編碼,比如將一個文件轉(zhuǎn)換成utf-8格式

:setfileencoding=utf-8

或者

11)設(shè)置文件集合,即要對哪些文件進行操作,可以使用通配符,比如我通常是對c/c++源程序進行編碼轉(zhuǎn)換

:args*.h*.cpp

2)給出要在每個文件上執(zhí)行的命令,這里是轉(zhuǎn)換編碼:

:argdosetfenc=utf-8|update

方法二:

iconv轉(zhuǎn)換

5.案例:

假如說我們將windows下的一個utf-8的文件傳到linux環(huán)境下,linux環(huán)境下的系統(tǒng)編碼是gb18030,我們cat的時候就會出現(xiàn)亂碼,這個時候就應(yīng)該想到轉(zhuǎn)碼了,下面我們來進行試驗:

我們將windows下一個名為utf-8.sh的文件傳到linux系統(tǒng)中,其中utf-8.sh的內(nèi)容如下:

我是中文編碼utf-8模式~

而linux系統(tǒng)的系統(tǒng)語言設(shè)置為:

[root@sor-syszy]#cat/etc/sysconfig/i18n

lang=zh_cn.gb18030

sysfont="latarcyrheb-sun16"

這個時候查看一下文件的內(nèi)容及編碼:

[root@sor-syszy]#fileutf-8.sh

utf-8.sh:utf-8unicodetext,withnolineterminators

[root@sor-syszy]#catutf-8.sh

锘挎垜鏄?腑鏂囩紪鐮乁tf-8妯″紡~[root@sor-syszy]#

[root@sor-syszy]#

這個時候我們就需要轉(zhuǎn)換編碼了,記得使用iconv

[root@sor-syszy]#iconv-futf-8-tgb18030utf-8.sh-ogb18030.sh

[root@sor-syszy]#catgb18030.sh

??我是中文編碼utf-8模式~[root@sor-syszy]#

[root@sor-syszy]#filegb18030.sh

gb18030.sh:non-isoextended-asciitext,withnolineterminators

[root@sor-syszy]#

convmv就是更改文件名編碼方式的一個工具。

比如

sudoconvmv-fgbk-tutf-8-r–notest/home

就是將/home目錄下原來文件名是gbk編碼方式的全部改為utf-8格式的。這里-f后面為原來的編碼方式,-t后面是要更改為的編碼方式,-r表示這個目錄下面的所有文件,–notest表示馬上執(zhí)行,而不是僅僅測試而已。另外這命令好像要root才能執(zhí)行,因此要加上sudo。