zoukankan      html  css  js  c++  java
  • linux下查看文件编码以及编码转换

       在linux下有时候需要编辑、查看windows下的文件,这样会经常遇到文件编码转换的问题,在windows中默认的文件格式在linux下看起来就有可能是乱码了(由于linux下的编码一般是utf-8的),这就需要进行编码转换。现在就来看下如何解决乱码问题。

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

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

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

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

    三、文件名编码转换:

        从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编码(只是文件名编码的转换,文件内容不会发生变化)


    强烈向大家推荐一个好网站,[url=http://www.51zxw.net/study.asp?vip=8089502][我要自学网][/url],教程由在校老师录制,,有办公类、平 面设计类,室内设计类,机械设计类教程.....让你足不出门,都可以体现学校的专业教育!
  • 相关阅读:
    51nod 1087 1 10 100 1000(找规律+递推+stl)
    51nod 1082 与7无关的数 (打表预处理)
    51 nod 1080 两个数的平方和
    1015 水仙花数(水题)
    51 nod 1003 阶乘后面0的数量
    51nod 1002 数塔取数问题
    51 nod 1001 数组中和等于K的数对
    51 nod 1081 子段求和
    51nod 1134 最长递增子序列 (O(nlogn)算法)
    51nod 1174 区间中最大的数(RMQ)
  • 原文地址:https://www.cnblogs.com/joeyupdo/p/2941760.html
Copyright © 2011-2022 走看看