全部的亂碼問題都是編碼不統一的問題,要解決編碼問題,就要了解自己的鏈接方式。shell
[TOC]ubuntu
xshell -> 終端 -> ubuntuvim
因此亂碼問題則出如今 xshell 與終端 編碼配置不一致上。bash
首先查看 xshell 編碼:編碼
Properties -> Terminal -> Encoding -> Unicode(UTF-8)
xshell編碼 UTF-8code
在終端執行 locale 查看編碼:utf-8
LC_ALL="zh_CN.GBK"
終端編碼 GBK登錄
把 export LC_ALL=zh_CN.UTF-8
寫入文件/etc/profile
執行 source /etc/profile
變量
注意: 若是執行source /etc/profile
出現以下錯誤:亂碼
/bin/bash: warning: setlocale: LC_ALL: cannot change locale (zh_CN.UTF-8)
先安裝zh_CN.UTF-8
,執行locale-gen zh_CN.UTF-8
,再使用locale
查看是否已修改
修改環境變量有三種方式 :
export : 暫時性,從新登陸就失效
寫入 ~/.bashrc : 長久性,只對當前用戶生效
寫入 /etc/profile ;長久性,對全部用戶生效
bash(終端)的環境變量讀入順序 /etc/profile -> ~/.bashrc -> export (後者會覆蓋前者設置)
注意:後兩種修改方式須要從新登陸或者執行 sourcr ~/.bashrc(/etc/profile)
纔可生效
xshell -> Terminal -> vim
須要vim的編碼方式與Terminal(終端)統一,在vim的配置文件~/.vimrc 寫入:
set fileencodings=utf-8,ucs-bom,gb18030,gbk,gb2312,cp936 # 讀入的文件編碼,由於沒法肯定文件編碼,因此要全寫上 set termencoding=utf-8 #在終端顯示時的編碼,需與終端一致 set encoding=utf-8 #vim自己的編碼,默認爲utf-8
修改.vimrc 有兩種方式(文件不存在就建立一個新的)
~/.vimrc : 長久性,當前用戶生效
/etc/vim/vimrc : 長久性,全部用戶生效