Linux下查看文件编码,文件或文件名编码格式转换

    技术2026-05-04  3

    Windows中默认的文件格式是GBK(gb2312),而Linux一般都是UTF-8。要想Linux正常显示中文,最后设置linux和windows都的编码方式都为UTF-8。

    1. linux命令enca查看文件编码格式 [root@local ~]# enca test.txt Simplified Chinese National Standard; GB2312 该文件是windows下记事本编辑产生的文件,编码方式是GB2312

    2. 设置linux系统支持UTF-8格式的中文显示 [root@local ~]# vim /etc/sysconfig/i18n LANG="zh_CN.UTF-8"

    使i18n生效: [root@local ~]#source /etc/sysconfig/i18n

    生效后的结果: [root@local ~]#locale LANG=zh_CN.UTF-8 LC_CTYPE="zh_CN.UTF-8" LC_NUMERIC="zh_CN.UTF-8" LC_TIME="zh_CN.UTF-8" LC_COLLATE="zh_CN.UTF-8" LC_MONETARY="zh_CN.UTF-8" LC_MESSAGES="zh_CN.UTF-8" LC_PAPER="zh_CN.UTF-8" LC_NAME="zh_CN.UTF-8" LC_ADDRESS="zh_CN.UTF-8" LC_TELEPHONE="zh_CN.UTF-8" LC_MEASUREMENT="zh_CN.UTF-8" LC_IDENTIFICATION="zh_CN.UTF-8" LC_ALL=

    3.文件编码转换

    [root@local ~]#iconv -f GB2312 -t UTF-8 test.txt -o test2.txt [root@local ~]#enconv -L GB2312 -x UTF-8 test.txt

    然后就可以显示test2.txt的中文内容

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

    5.在windows源端使用UTF-8编码格式存储文件   使用记事本选择文件->另存为,编码方式选择UTF-8。

    6.下载     enca和enconv命令下载地址

    最新回复(0)