スキップしてメイン コンテンツに移動

投稿

8月, 2009の投稿を表示しています

ターミナルが文字化けしたときの対処

概要   ターミナルの文字が化けて,正常に表示されなくなることがある.これには,ターミナルを一度閉じて,再度新しいターミナルを立ち上げれば回復するが,煩わしいものである.   ここでは,ターミナルを閉じること無く,文字化けの除隊から回復する方法を記す. 文字が表示されない/改行がおかしい   ターミナルの設定がエコーなしになってたり,改行(LF)をCR/LFに変換しなくなったりする.   原因)sttyの設定がおかしくなってる stty -a すると、正常な場合と異常な場合で何箇所か違ってるはず 正常な状態で stty -g した結果を保存しておき,   異常になったらそれを実行する. 改行が効かないときは ^J で代用できるはず. % stty 2d02:5:4bf:8a3b:3:1c:7f:15:4:0:1:ff:11:13:1a:ff:12:f:17:16:ff:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0 英字が化ける(SI/SO問題)   誤って SO (0x0E,0/14) を表示すると,英字にあたる領域(GL)にG1領域の文字が呼び出されてしまい,以後英字が文字化けする.   SIを表示すれば治る. % echo ^V^O   ctrlを押したまま,VOと押す. 英字が化ける(screen問題)   screenを使っている場合,screen側の文字エンコーディングがおかしくなることがある.screenのコマンドで下記のいずれかを指定. :encoding utf8 :encoding euc