参考:

http://edyfox.codecarver.org/html/vim_fileencodings_detection.html

一、查看文件编码。 
    在打开文件的时候输入:set fileencoding 
    即可显示文件编码格式。

二、文件编码转换 
    1、在Vim中直接进行转换文件编码,比如将一个文件转换成utf-8格式 
        在打开的文件中输入:set fileencoding=utf-8

2、使用iconv转换,iconv的命令格式如下:

iconv -f encoding -t encoding inputfile 
        比如将一个 编码的文件转换成GBK编码 
        iconv -f UTF-8 -t GBK file1 -o file2

iconv的用法:

用法: iconv [选项...] [文件...] 
Convert encoding of given files from one encoding to another. 
输入/输出格式规范: 
  -f, --from-code=NAME       原始文本编码 
  -t, --to-code=NAME         输出编码 
信息: 
  -l, --list                 列举所有已知的字符集 
输出控制: 
  -c                         从输出中忽略无效的字符 
  -o, --output=FILE          输出文件 
  -s, --silent               suppress warnings 
      --verbose              打印进度信息 
  -?, --help                 给出该系统求助列表 
      --usage                给出简要的用法信息 
  -V, --version              打印程序版本号

将GB2312编码的文件内容转换为UTF-8 
iconv -f GB2312 -t UTF-8 file-name > new-file-name

将UTF-8编码的文件内容转换为GB2312 
iconv -f UTF-8 -t GB2312 file-name > new-file-name 
注意:转换前一定要将重要的文件备份,特别是转换文件内容的时候

三、文件名编码转换:

从linux往windows拷贝文件或者从windows往Linux拷贝文件,有时会出现中文文件名乱码的情况,出现这种问题的原因是因为,windows的文件名 中文编码默认为GBK,而Linux中默认文件名编码为UTF8,由于编码不一致,所以导致了文件名乱码的问题,解决这个问题需要对文件名进行转码。 
    在Linux中专门提供了一种工具convmv进行文件名编码的转换,可以将文件名从GBK转换成UTF-8编码,或者从UTF-8转换到GBK。

1、先看一下你的系统上是否安装了convmv,如果没安装的话在终端输入下面的命令安装: 
       sudo yum -y install convmv

2、下面看一下convmv的具体用法: 
       convmv -f 源编码 -t 新编码 [选项] 文件名 
       常用参数: 
          -r 递归处理子文件夹 
          --notest 真正进行操作,请注意在默认情况下是不对文件进行真实操作的,而只是试验。 
          --list 显示所有支持的编码 
          --unescap 可以做一下转义,比如把%20变成空格 
    比如我们有一个utf8编码的文件名,转换成GBK编码,命令如下: 
    convmv -f UTF-8 -t GBK --notest utf8编码的文件名

这样转换以后"utf8编码的文件名"会被转换成GBK编码(只是文件名编码的转换,文件内容不会改变)

linux shell 中文件编码查看及转换方法的更多相关文章

  1. Linux shell 中提取zip或jar文件中的某个文件

    Linux shell 中提取zip或jar文件中的某个文件 假如有个压缩包 abc.jar, 里面文件如下 (可以用unzip -l abc.jar 查看): data/1.txt data/2.t ...

  2. 理解 Linux shell 中的一个方言:2>&1

    理解 Linux shell 中的一个方言:2>&1  2016-11-14 杜亦舒 前言 在使用 linux 命令或者 shell 编程时,这个用法常会遇到 2>&1 如 ...

  3. Linux shell中的一个问题 ${}带正则匹配的表达式

    目前在准备龙芯项目的PMON,在研究其编译过程的时候,看到一些make 语句,百思不得其解.后来在shell编程中看到一点资料,牵扯到Shell中的正则表达式.故记录下来,以备后来查阅. 问题: 在某 ...

  4. Linux shell中的竖线(|)——…

    原文地址:Linux shell中的竖线(|)--管道符号作者:潇潇 管道符号,是unix一个很强大的功能,符号为一条竖线:"|". 用法: command 1 | command ...

  5. [转载]Linux shell中的竖线(|)——管道符号

    原文地址:Linux shell中的竖线(|)--管道符号作者:潇潇 管道符号,是unix一个很强大的功能,符号为一条竖线:"|". 用法: command 1 | command ...

  6. Linux系统中文件定位与查找

    Linux系统中文件查找 关键词 文件查找 | find | locate 本文主要介绍有关文件查找的两个命令——find和locate,以及压缩打包的命令——compress, gzip,bzip2 ...

  7. Linux Shell中的特殊符号和含义简明总结(包含了绝大部份)

    case语句适用于需要进行多重分支的应用情况. case分支语句的格式如下: case $变量名 in 模式1) 命令序列1 ;; 模式2) 命令序列2        ;; *) 默认执行的命令序列  ...

  8. linux Shell中常用的条件判断

    linux Shell中常用的条件判断 -b file            若文件存在且是一个块特殊文件,则为真 -c file            若文件存在且是一个字符特殊文件,则为真 -d ...

  9. Linux Shell 中 > 和 >> 的异同点和应用场景

    Linux Shell 中 > 和 >> 的异同点和应用场景 > 和 >> 的异同点 举例说明(start.sh 为某个服务的启动脚本,start.log 为某服务 ...

随机推荐

  1. django学习之——模版

    为了减少模板加载调用过程及模板本身的冗余代码,Django 提供了一种使用方便且功能强大的 API ,用于从磁盘中加载模板, 要使用此模板加载API,首先你必须将模板的保存位置告诉框架. 设置的保存文 ...

  2. java旅程(二) 基本语法

    java变量: 数值型        整数类型(byte,short,int,long)浮点类型(float,double) 字符型 char 基本数据类型                       ...

  3. kiss word memory post poly peri out ~p 4

    1● post p əust 在后面,邮件     2● peri 多   3● poly 周围,靠近  

  4. Sql server中如何将表A和表B的数据合并(乘积方式)

    sql server中如何将表A 和表B的数据合并成乘积方式,也就是说表A有2条数据,表B有3条数据,乘积后有6条数据, 这就要用到sql中的笛卡尔积方式了 1.什么是笛卡尔积 笛卡尔积在SQL中的实 ...

  5. python运算符号

    运算符 比较运算 赋值运算 逻辑运算 成员运算

  6. js 敏感词过滤

    <!doctype html> <html> <head> <meta charset="utf-8"> <meta name ...

  7. 图的关键路径,AOE,完整实现,C++描述

    body, table{font-family: 微软雅黑; font-size: 13.5pt} table{border-collapse: collapse; border: solid gra ...

  8. log4j的参数配置(转)

    转载:log4j.properties文件各参数含义与配置   以下是配置文件log4j.properties的一些属性: log4j.rootLogger=WARN, stdout, Rlog4j. ...

  9. hdu5335(bfs,贪心)

    In an n∗mn∗m maze, the right-bottom corner is the exit (position (n,m)(n,m) is the exit). In every p ...

  10. 用Filter实现图片防盗链

    首先继承自FilterAttribute类同时实现IActionFilter接口,代码如下: //// <summary> /// 防盗链Filter. /// </summary& ...