全部的乱码问题都是编码不统一的问题,要解决编码问题,就要了解自己的链接方式。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 : 长久性,全部用户生效