Linux操作系統(tǒng)下linux命令亂碼的終極解決方案
初入linux的程序員們,經(jīng)常會受到linux命令亂碼的問候??芍^“始亂終棄”。因為亂碼,并且最終放棄了linux的不在少數(shù)。好吧,言歸正傳,先看看各類linux命令亂碼是怎么形成的。
中文字符的linux命令亂碼
這種情況一般是安裝了中文控制端,但沒有啟用中文應(yīng)用造成的。只需要啟動相應(yīng)軟件即可,如zhcon?;蛘呤菃⒂昧讼鄳?yīng)軟件,但字符集不對,需設(shè)置相應(yīng)字符集,例如export LANG=zh_CN.UTF-8
ORACLE安裝界面linux命令亂碼
雖說ORACLE支持多國語言,會根據(jù)環(huán)境變量自動選擇字符集,但中文安裝好像還有問題,不過10.2以后的版本好像沒有該問題了,具體可以執(zhí)行命令export LANG=en_US來設(shè)置為英文字符集環(huán)境
英文字符linux命令亂碼
一般該字符linux命令亂碼多出現(xiàn)在cat了二進(jìn)制的文件時,因為二進(jìn)制文件中多有控制碼,會導(dǎo)致終端界面linux命令亂碼,通常解決方法是用reset終端復(fù)位命令解決問題
其他偽終端linux命令亂碼
有時是通過SSH進(jìn)入遠(yuǎn)程LINUX服務(wù)器時,cat一個core文件,并且用reset命令都不能成功,怎么辦?很簡單,看以下試驗,首先cat一個python的編譯文件
oracle@linux-suse:~> cat fibo.pyc
m?
{?鯡c@sd
Zd
ZdS(cCs:d\}}x'jo G }}qWdS(Nii(ii(tatbtn(RRR((tfibo.pytfibs
cCsIg}d\}}x0jo" i}}qW S(Nii(ii(tresultRRRtappend(RRRR((Rtfib2 s
N(RR(RR((Rt?s oracle@linux-suse:~> VT102VT102
\-bash: VT102VT102: command not found
在SSH終端上看到是的linux命令亂碼,提示符都是亂的,可以用以下命令恢復(fù)
oracle@linux-suse:~> tput sgr0
linux命令亂碼問題產(chǎn)生的原因是SSH的問題,因為在其他終端下,cat用樣一個文件,不會產(chǎn)生亂碼,于是試驗linux命令亂碼產(chǎn)生的原因
oracle@linux-suse:~> ^N
只要用ctrl+v,ctrl+n就使用屏幕linux命令亂碼,當(dāng)然恢復(fù)后再試驗
oracle@linux-suse:~> echo -e '\xe'
屏幕再次亂碼,好,再恢復(fù)
oracle@linux-suse:~> echo -e '\xf'
以上是需要盲打的,因為屏上看到的是linux命令亂碼,最終問題產(chǎn)生的原因是十六進(jìn)制字符E產(chǎn)生的,解決也很簡單,十六進(jìn)制字符F即可。
以上是Linux操作系統(tǒng)下linux命令亂碼的***解決方案,希望對您有所幫助。
【編輯推薦】