linux字元集
㈠ 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. enconv 轉換文件編碼,比如要將一個GBK編碼的文件轉換成UTF-8編碼,操作如下
enconv -L zh_CN -x UTF-8 filename
3. iconv 轉換,iconv的命令格式如下:
iconv -f encoding -t encoding inputfile
比如將一個UTF-8 編碼的文件轉換成GBK編碼
iconv -f UTF-8 -t GBK file1 -o file2
查看文件編碼file命令
file ip.txt ip.txt: UTF-8 Unicode text, with escape sequences
一、利用iconv命令進行編碼轉換文件內容編碼轉換 iconv命令用於轉換指定文件的編碼,默認輸出到標准輸出設備,亦可指定輸出文件。 用法: iconv [選項...] [文件...] 有如下選項可用: 輸入/輸出格式規范: -f, --from-code=名稱 原始文本編碼 -t, --to-code=名稱 輸出編碼 信息: -l, --list 列舉所有已知的字元集 輸出控制: -c 從輸出中忽略無效的字元 -o, --output=FILE 輸出文件 -s, --silent 關閉警告 --verbose 列印進度信息 -?, --help 給出該系統求助列表 --usage 給出簡要的用法信息 -V, --version 列印程序版本號 例子: iconv -f utf-8 -t gb2312 aaa.txt >bbb.txt 這個命令讀取aaa.txt文件,從utf-8編碼轉換為gb2312編碼,其輸出定向到bbb.txt文件。
二、文件名編碼轉換
因為現在用linux,原來在windows里的文件都是用GBK編碼的。所以到linux下是亂碼,文件內容可以用iconv來轉換可是好多中文的文件名還是亂碼,找到個可以轉換文件名編碼的命令,就是convmv。
convmv命令詳細參數 例如
convmv -f GBK -t UTF-8 *.mp3
不過這個命令不會直正的轉換,你可以看到轉換前後的對比。如果要直正的轉換要加上參數 --notest
convmv -f GBK -t UTF-8 --notest *.mp3
-f 參數是指出轉換前的編碼,-t 是轉換後的編碼。這個千萬不要弄錯了。不然可能還是亂碼哦。還有一個參數很有用。就是 -r 這個表示遞歸轉換當前目錄下的所有子目錄。
* 需要安裝 convmv-1.10-1.el5.noarch.rpm
三、 更好的傻瓜型命令行工具enca,它不但能智能的識別文件的編碼,而且還支持成批轉換。 1.安裝
$sudo apt-get install enca
2.查看當前文件編碼
enca -L zh_CN ip.txt Simplified Chinese National Standard; GB2312 Surrounded by/intermixed with non-text data
3.轉換 命令格式如下
$enca -L 當前語言 -x 目標編碼 文件名
例如要把當前目錄下的所有文件都轉成utf-8
enca -L zh_CN -x utf-8 *
檢查文件的編碼enca -L zh_CN file
將文件編碼轉換為"UTF-8"編碼 enca -L zh_CN -x UTF-8 file
如果不想覆蓋原文件可以這樣 enca -L zh_CN -x UTF-8 < file1 > file2
㈡ 如何修改linux系統的字元集
把linux的字元集改變一下。
路徑:etc/sysconfig/i18n
默認的為:
代碼如下:
LANG=「en_US.UTF-8」
SYSFONT=「latarcyrheb-sun16」
修改為:
代碼如下:
LANG=「zh_CN.GB18030」
LANGUAGE=「zh_CN.GB18030:zh_CN.GB2312:zh_CN」
SUPPORTED=「zh_CN.GB18030:zh_CN:zh:en_US.UTF-8:en_US:en」
SYSFONT=「lat0-sun16」
重啟Linux伺服器即可。
㈢ 如何查看Linux系統的字元集
1、# echo $LANG2、# env |grep LANG3、# locale以上三個操作,均可查到當前系統所使用的字元集,請看看《linux就該這么學》,linux命令學習方法。
㈣ LINUX字元集與oracle字元集問題
ORACLE用這個就行:
NLS_LANG=AMERICAN_AMERICA.ZHS16GBK
說明:
NLS_LANG一般由三個部分組成, 語言、地域和字元集。
真正影響資料庫字元集的其實是第三部分。
ZHS16GBK表示採用GBK編碼格式、16位(兩個位元組)簡體中文字元集 。
LINUX也可以用這個字元集。
㈤ linux 字元集 設置
登錄 test ,cat ~/.bash_profile 貼出輸出。
我記得 bash 默認好像並不一定絕對的執行 .bash_profile 吧?貌似我的機器是 ~/.bashrc 。
印象里這東西可以改……
㈥ 如何改變Linux系統語言/字元集
改變redhat的系統語言/字元集修改 /etc/sysconfig/i18n 文件,如
LANG="en_US",xwindow會顯示英文界面,
LANG="zh_CN.GB18030",xwindow會顯示中文界面。
還有一種方法
cp /etc/sysconfig/i18n $HOME/.i18n
修改 $HOME/.i18n 文件,如
LANG="en_US",xwindow會顯示英文界面,
LANG="zh_CN.GB18030",xwindow會顯示中文界面。
這樣就可以改變個人的界面語言,而不影響別的用戶
(Debian不支持GB18030(RH的zysong字型檔是有版權的)
現在好像沒有Free的GBK和GB18030字型檔
vi .bashrc
export.GB2312
export LC_ALL=zh_CN.GB2312)
㈦ 如何查詢查看linux是否安裝了中文字元集
lucifer@abc:~$ locale -a 查看本地字元集
lucifer@abc:~$ locale -m 查看所有支持的字元集
將文件從gb2312轉為utf8
iconv -f gb2312 -t utf8 input.txt -o output.txt
如果沒有中文字元集,可以手動安裝。
1、安裝中文包:
#yum -y groupinstall chinese-support 安裝所有與中文支持相關的包
2、修改字元編碼配置文件
# vi /etc/sysconfig/i18n
修改後內容如下:
LANG="zh_CN.UTF-8"
SUPPORTED="zh_CN:zh:en_US.UTF-8:en_US:en:zh_CN.GB18030"
SYSFONT="latarcyrheb-sun16"
3、最後重啟伺服器:
#reboot
㈧ 如何查看linux系統的字元集
1、# echo $LANG2、# env |grep LANG3、# locale以上三個操作,均可查到當前系統所使用的字元集,請看看《linux就該這么學》,linux命令學習方法。
㈨ linux字元集有哪些
1、查詢
(1) 查看當前伺服器字元集: # locale
(2) 查看伺服器支持的字元集: # locale -a
2、修改linux系統字元集的方式有如下兩種:
(1) 直接設置變數的方式修改,命令如下兩條命令:
[root@demo ~]# 或者 export LANG="xxx"
[root@demo ~]# LC_ALL="xxx" 或者 export LC_ALL="xxx"
(備註:xxx為欲修改為的字元集)
查看標準的字元集的方法: locale –a 命令,常用的有: zh_CN.GB2312、
zh_CN.GB18030 或者 zh_CN.UTF-8、en_US.UTF-8等
但是上述修改方式只會在當前shell中生效,新建shell此環境變數消失。
故平時登錄系統執行"LANG= "這個命令的時候顯示的就沒有亂碼的緣故,意思就是取消了字元集的顯示,