mac 終端下ssh 登錄遠程服務器不發輸入中文


轉:https://segmentfault.com/q/1010000000150673

用Mac的iterm2 ssh連上去,終端顯示中文亂碼,也不能輸入中文,然而本地終端可以顯示和輸入。

解決方法:

這種情況一般是終端和服務器的字符集不匹配,MacOSX下默認的是utf8字符集。
輸入locale可以查看字符編碼設置情況,而我的對應值是空的。
因為我在本地和服務器都用zsh替代了bash,而且使用了oh-my-zsh,而默認的.zshrc沒有設置為utf-8編碼,所以本地和服務器端都要在.zshrc設置,步驟如下,bash對應.bash_profile.bashrc文件。

1.在終端下輸入

vim ~/.zshrc

或者使用其他你喜歡的編輯器編輯~/.zshrc文件
<!--more-->

2.在文件內容末端添加:

export LC_ALL=en_US.UTF-8 export LANG=en_US.UTF-8

接着重啟一下終端,或者輸入source ~/.zshrc使設置生效。

設置成功的話,在本地和登錄到服務器輸入locale回車會顯示下面內容。

LANG="en_US.UTF-8" LC_COLLATE="en_US.UTF-8" LC_CTYPE="en_US.UTF-8" LC_MESSAGES="en_US.UTF-8" LC_MONETARY="en_US.UTF-8" LC_NUMERIC="en_US.UTF-8" LC_TIME="en_US.UTF-8" LC_ALL="en_US.UTF-8"

這時,中文輸入和顯示都正常了。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM