當前位置:首頁 » 操作系統 » linux字元亂碼

linux字元亂碼

發布時間: 2022-05-14 11:03:04

linux 打開的中文亂碼怎麼解決

在linux上一般使用utf8編碼。
如果打開文件是亂碼,要設置utf8編碼,看看自己用的是什麼編輯器。
如果是vim則使用
set encoding=utf8即可
如果是gedit,則重新另存一下,在存儲窗口 設置為utf8編碼 ,在打開即可。

⑵ linux l出現中文亂碼 怎麼辦

從windows傳過來的文件拷到linux下是亂碼,俺們又想在linux下顯示中文,怎麼辦呢?我們首先進行測試,linux下的中文是否可以正常顯示?答:yes.
所以問題就比較明顯了,windows下拷過來的不能顯示,說明windows下和linux下支持的格式是不相同的.
linux下一般是採用utf-8的編碼,而我們在windows上編輯文件時是gb2312的編碼。所以導致中文編碼會亂碼。要更正這個問題實際上很簡單只要把文件轉換成utf-8編碼格式然後再導入就ok啦。
然後使用如下命令進行轉換:
iconv
-f
gb2312
-t
utf-8
test.txt>
testutf8.tzt
(-f
就是源編碼,-t
轉換目標編碼,test.txt源文件,testutf8.txt生成目標編碼文件)
備註:使用
iconv
-l
可以查看系統支持編碼格式。當然也可以添加其中的編碼格式:

⑶ linux 部分中文文件亂碼怎麼解決

linux文件名、文件內容亂碼,主要原因是windows上的中文編碼默認是gbk,而linux默認中文編碼為utf-8,由於編碼不一致,所以導致亂碼問題。
為了解決這個亂碼,需要對文件進行轉碼,具體如下:
1、前提保證已安裝了convmv;
2、具體convmv的用法:
convmv
–f
源編碼
–t
新編碼
[選項]
文件名
一般常用參數:
-r
遞歸處理子目錄
--notest
真正進行操作,默認情況下是不對文件進行真實操作的,只是一個預覽
--list
顯示所有支持的編碼
--unescap
可以做一個轉義
3、比如我們有一個utf8的文件名,要求轉換成gbk編碼,命令如下:
convmv
–f
utf-8
–t
gbk
–notest
文件名
也可以使用linux下最好用的編碼轉換工具iconv來進行轉碼操作。
例子:將gbk編碼的文件轉換成utf-8
iconv
-f
gbk
-t
utf-8
gbkfile.txt
>
utf8file.txt

⑷ linux下中文顯示亂碼怎麼解決

linux下經常遇到的編碼問題如果你需要在Linux中操作windows下的文件,那麼你可能會經常遇到文件編碼轉換的問題。Windows中默認的文件格式是GBK(gb2312),而Linux一般都是UTF-8。
查看編碼的方法

方法一:file filename
方法二:在Vim中可以直接查看文件編碼
:set fileencoding
如果你只是想查看其它編碼格式的文件或者想解決用Vim查看文件亂碼的問題,那麼你可以在
~/.vimrc 文件中添加以下內容:
set encoding=utf-8 fileencodings=ucs-bom,utf-8,cp936
這樣,就可以讓vim自動識別文件編碼(可以自動識別UTF-8或者GBK編碼的文件),其實就是依照fileencodings提供的編碼列表嘗試,如果沒有找到合適的編碼,就用latin-1(ASCII)編碼打開
文件編碼轉換

多方法:
iconv 提供標準的程序和API來進行編碼轉換;
convert_encoding.py 基於Python的文本文件轉換工具;
decodeh.py 提供演算法和模塊來談測字元的編碼;
linux下文件編碼轉換:

方法一:

在Vim中直接進行轉換文件編碼,比如將一個文件轉換成utf-8格式
:set fileencoding=utf-8

或者

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

:args *.h *.cpp

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

:argdo set fenc=utf-8 | update

方法二:

iconv 轉換

5.案例:

假如說我們將windows下的一個UTF-8的文件傳到linux環境下,linux環境下的系統編碼是GB18030,我們cat的時候就會出現亂碼,這個時候就應該想到轉碼了,下面我們來進行試驗:

我們將windows下一個名為UTF-8.sh的文件傳到linux系統中,其中UTF-8.sh的內容如下:

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

而linux系統的系統語言設置為:

[root@sor-sys zy]# cat /etc/sysconfig/i18n
LANG=zh_CN.GB18030
SYSFONT="latarcyrheb-sun16"
這個時候查看一下文件的內容及編碼:

[root@sor-sys zy]# file UTF-8.sh
UTF-8.sh: UTF-8 Unicode text, with no line terminators
[root@sor-sys zy]# cat UTF-8.sh
鍩挎垜鏄?腑鏂囩紪鐮乁TF-8妯″紡~[root@sor-sys zy]#
[root@sor-sys zy]#

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

[root@sor-sys zy]# iconv -f UTF-8 -t GB18030 UTF-8.sh -o GB18030.sh
[root@sor-sys zy]# cat GB18030.sh
??我是中文編碼UTF-8模式~[root@sor-sys zy]#
[root@sor-sys zy]# file GB18030.sh
GB18030.sh: Non-ISO extended-ASCII text, with no line terminators
[root@sor-sys zy]#

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

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

⑸ linux中文文件顯示亂碼怎麼解決

Linux文件名、文件內容亂碼,主要原因是windows上的中文編碼默認是GBK,而Linux默認中文編碼為UTF-8,由於編碼不一致,所以導致亂碼問題。 為了解決這個亂碼,需要對文件進行轉碼,具體如下: 1、前提保證已安裝了convmv; 2、具體convmv的用法: Convmv –f 源編碼 –t 新編碼 [選項] 文件名 一般常用參數: -r 遞歸處理子目錄 --notest 真正進行操作,默認情況下是不對文件進行真實操作的,只是一個預覽 --list 顯示所有支持的編碼 --unescap 可以做一個轉義 3、比如我們有一個utf8的文件名,要求轉換成gbk編碼,命令如下: Convmv –f utf-8 –t gbk –notest 文件名 也可以使用linux下最好用的編碼轉換工具iconv來進行轉碼操作。 例子:將GBK編碼的文件轉換成UTF-8 iconv -f GBK -t UTF-8 gbkfile.txt > utf8file.txt

⑹ 如何解決linux亂碼問題

出現這種情況的原因為兩種操作系統的中文壓縮方式不同,在windows環境中中文壓縮一般為gbk,而在linux環境中為utf8,這就導致了在windows下能正常顯示
txt文件在linux環境下打開呈現了亂碼狀態。
解決方法:在linux用iconv命令,輸入命令如下
iconv -f gbk -t utf8 file.pdf > file.pdf.utf8
此時會重生一file.utf8文件,打開之後就能正常顯示中文

linux系統下修改語言配置方法有:
法一:修改/etc/profile文件,增加export.GB18030
法二:修改/etc/sysconfig/i18n文件,將
#LANG="en_US.UTF-8"
#SUPPORTED="en_US.UTF-8:en_US:en"
#SYSFONT="latarcyrheb-sun16"
改為
LANG="zh_CN.UTF-8"
SUPPORTED="zh_CN:zh:en_US.UTF-8:en_US:en:zh_CN.GB18030"
SYSFONT="latarcyrheb-sun16"

/etc/profile: 為系統的每個用戶設置環境信息,當用戶第一次登錄時,該文件被執行.
/etc/sysconfig/i18n 這里存放的是系統的區域語言設置
LANG 表明你當前系統的語言環境變數設置 ,這里是 zh_CN.GB18030
SUPPORTED 表明系統預置了那些語言支持 ,不在項目中的語言不能正常顯示
SYSFONT 定義控制台終端字體,你文本登錄的時候顯示的字體是 latarcyrheb-sun16
I18N 是 internationalization 的縮寫形式,意即在 i 和 n 之間有 18 個字母,本意是指軟體的「國際化」.I18N支持多種語言,不過同一時間只能是英文和一種選定的語言,例如英文+中文、英文+德文、英文+韓文等等;

如果在SCRT上操作時中文亂碼,可依次點擊options--session options--appearance,選擇character encoding為UTF-8

⑺ 如何解決 linux 操作系統顯示中文亂碼問題

預設配置下,用
ubuntu
的文本編輯器(gedit)打開
gb18030/gbk/gb2312
等類型的中文編碼文本文件時,將會出現亂碼。
原因分析:
gedit
使用一個編碼匹配列表,只有在這個列表中的編碼才會進行匹配,不在這個列表中的編碼將顯示為亂碼。您要做的就是將
gb18030
加入這個匹配列表。
命令行方式,適用於所有
ubuntu
用戶。
復制以下命令到終端中,然後回車即可:
代碼示例:
gconftool-2
--set
--type=list
--list-type=string
/apps/gedit-2/preferences/encodings/auto_detected
"[utf-8,current,gb18030,big5-hkscs,utf-16]"
圖形化方式,適用於
ubuntu
用戶,而不適用於
kubuntu/xubuntu
用戶。
您可以遵循以下步驟,使您的
gedit
正確顯示中文編碼文件。
按下
alt-f2,打開「運行應用程序」對話框。
在文本框中鍵入「gconf-editor」,並按下回車鍵,打開「配置編輯器」。
展開左邊的樹節點,找到
/apps/gedit-2/preferences/encodings
節點並單擊它。
雙擊右邊的
auto_detected
鍵,打開「編輯鍵」對話框。
單擊列表右邊的「添加」按鈕,輸入「gb18030」,單擊確定按鈕。
列表的最底部新增加了一個「gb18030」。單擊選中它,並單擊右邊的
「向上」
按鈕直到
「gb18030」
位於列表的頂部為止。
單擊確定按鈕,關閉配置編輯器。
gedit3.x版本設置
終端輸入dconf-editor
展開org/gnome/gedit/preferences/encodings
auto-detected的value中加入』gb18030′,加在uft8後面;
show-in-menu的value中加入』gb18030′
現在,您的
gedit
應該能夠順利打開
gb18030
編碼的文本文件了。
gedit
3.x版本命令設置:
代碼示例:
gsettings
set
org.gnome.gedit.preferences.encodings
auto-detected
"['utf-8','gb18030','gb2312','gbk','big5','current','utf-16']"
fedora
16自帶的gedit文本編輯器屬於gedit3.x版本,所以網上很多關於gedit設置不太適用,根本找不到
/apps/gedit-2/preferences/encodings,所以這個問題還沒解決的用戶可以借鑒一下gedit3.x版本設置方法。

⑻ linux查看日誌,如何解決字元串亂碼

主要思路有兩種:【1】本地客戶端編碼設置錯了如果你用的是putty 一、Linux系統的設置
1)關閉Linux的防火牆
#iptables -F
#iptables save
2)編輯/etc/sysconfig/i18n,將LANG=en_US.UTF-8改為LANG=zh_CN.UTF-8
SUPPORT=en_US.UTF-8….也作類似改動,接下來執行:
#. /etc/sysconfig/i18n
#locale (檢查本地locale)
如果看到顯示了LANG=zh_CN.UTF-8等信息,表明改動成功。【2】伺服器不支持中文字元串顯示【3】有可能是程序代碼例如log4j文件設置錯了
--------------------- 建議看看這本書《Linux就該這么學》

在Xshell、putty、SSH Secure Shell Client 等等客戶端設置utf8的編碼就可以了,在「文件」選項里點開「屬性」一項進行設置,如下圖:

⑼ linux系統上出現亂碼怎麼解決

linux 中文顯示亂碼解決辦法, 其實是有多種情況的, 有一部分是由於終端默認的設置造成的

vi /etc/sysconfig/i18n
將內容改為
LANG="en_US.UTF-8"
SUPPORTED="zh_CN.UTF-8:zh_CN:zh:en_US.UTF-8:en_US:en"
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"
不用重啟,馬上就生效.

這樣中文在SSH,telnet終端一般可以正常顯示了。

如果還是不行,可以這么做:

1、console終端亂碼

在/etc/profile文件的最後一行添加如下內容:

export LC_ALL="zh_CN.GB18030"

2、xwindow終端亂碼

在/etc/sysconfig/i18n文件的最後一行添加如下內容:

export LC_ALL="zh_CN.GB18030"

⑽ linux文件顯示中文亂碼怎麼解決

在linux上一般使用utf8編碼。 如果打開文件是亂碼,要設置utf8編碼,看看自己用的是什麼編輯器。 如果是vim則使用 set encoding=utf8即可 如果是gedit,則重新另存一下,在存儲窗口 設置為utf8編碼 ,在打開即可。

熱點內容
使命召喚生化武器怎麼配置 發布:2024-10-10 13:13:15 瀏覽:490
磁碟陣列怎麼配置管理口 發布:2024-10-10 13:10:05 瀏覽:187
如何撤銷自己的配置 發布:2024-10-10 12:41:47 瀏覽:687
win7無法復制文件夾 發布:2024-10-10 12:40:11 瀏覽:147
文章存儲結構 發布:2024-10-10 12:40:11 瀏覽:881
添加多個FTP網站的方法有哪些 發布:2024-10-10 12:03:03 瀏覽:842
表格怎麼調用網頁資料庫資料庫數據 發布:2024-10-10 11:37:33 瀏覽:657
海力壓縮機 發布:2024-10-10 11:32:26 瀏覽:526
洗過的海帶存儲方法 發布:2024-10-10 11:19:00 瀏覽:241
64H的源碼 發布:2024-10-10 11:06:01 瀏覽:153