`
xieye
  • 浏览: 842301 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

linux 查看文件编码

阅读更多
http://www.xiaojb.com/archives/it/convert-gbk-utf-8.shtml

http://space.itpub.net/10768286/viewspace-536375

http://www.cnblogs.com/cocowool/archive/2009/04/25/1443529.html

引用以上几篇文章的内容。

linux下主要是使用iconv和enca,其中enca需要自己装,以下是网址
http://freshmeat.net/projects/enca/
linux里面转换编码的方法很多,google了一下,一般的人都是用”iconv”命令来进行转换。但是由于我需要在脚本里面判断文件的编码,”iconv”就不太适用。其实Linux里面还有另一个能进行编码转换,并比”iconv”功能强大的”enca”。
使用方法:
enca -L zh_CN file 检查文件的编码
enca -L zh_CN -x UTF-8 file 将文件编码转换为"UTF-8"编码
enca -L zh_CN -x UTF-8 < file1 > file2 如果不想覆盖原文件可以这样
除了有检查文件编码的功能以外,”enca”还有一个好处就是如果文件本来就是你要转换的那种编码,它不会报错,还是会print出结果来,而”iconv”则会报错。这对于脚本编写是比较方便的事情。



2. iconv 转换,iconv的命令格式如下:
iconv -f encoding -t encoding inputfile
比如将一个UTF-8 编码的文件转换成GBK编码
iconv -f GBK -t UTF-8 file1 -o file2


以上为引用
===============================
以下为自己写滴

根据引用文章的内容,直接使用enca,效果还不错。

另外,php也可以的,使用mb系列函数,其中一个函数mb_detect能够检测不同文件的编码是什么。但是既然有现成的linux命令,就直接用linux了。

批量处理

如果只想查看
find /home/utf/ -name *.txt|xargs enca -L zh_CN


如果想批量转换成UTF-8,不管原先是神马

首先,把/home/doc/下的txt全部拷贝到另一个文件夹/home/utf/下,
使用了/home/script/cp.php,在附件
find /home/doc/ -name *.txt|xargs php /home/script/cp.php /home/utf/


然后,
find /home/utf/ -name *.txt|xargs enca -L zh_CN -x UTF-8


如果愿意,可以查看
find /home/utf/ -name *.txt|xargs enca -L zh_CN|grep GB

应该没有显示。

如果愿意,可以再统统换成unix换行符
find /home/utf/ -name *.txt|xargs dos2unix



========================================

以动手实践为荣 , 以只看不练为耻; 
以打印日志为荣 , 以单步跟踪为耻; 
以空格缩进为荣 , 以制表缩进为耻; 
以单元测试为荣 , 以人工测试为耻; 

以模块复用为荣 , 以复制粘贴为耻; 
以多态应用为荣 , 以分支判断为耻; 
以Pythonic为荣 , 以冗余拖沓为耻; 
以总结分享为荣 , 以X求其解为耻; 

  • cp.zip (826 Bytes)
  • 下载次数: 3
分享到:
评论

相关推荐

    Linux查看文件编码格式及文件编码转换

    ### Linux文件编码转换 在Linux环境下,有时候需要对文件的编码进行转换以适应不同的应用场景或需求。以下是几种常见的文件编码转换方法: #### 使用Vim转换文件编码 1. **直接在Vim中转换**:打开文件后,可以在...

    Linux下查看文件编码,文件编码格式转换和文件名编码.doc

    Linux 文件编码查看、转换和文件名编码转换 在 Linux 中查看文件编码可以通过多种方式实现,例如,在 Vim 中可以使用 `set fileencoding` 命令来查看当前文件的编码格式。如果需要自动识别文件编码,可以在 `~/....

    linux转化windows文件编码格式脚本

    Linux 转换 Windows 文件编码格式脚本 Linux 转换 Windows 文件编码格式脚本是将 Windows 上的文件编码格式转换为 UTF-8 编码,以便在移植 Windows 代码到 Linux 下时避免注释代码乱码和编码格式引起的编译错误。 ...

    查看文件编码格式Demo

    本文将深入探讨“查看文件编码格式”的重要性、方法以及相关的技术细节。 首先,我们要明白什么是文件编码格式。文件编码格式,如ASCII、UTF-8、GBK等,是用来规定字符集和它们在二进制数据流中表示方式的一种标准...

    Linux下11查看文件编码.docx

    Linux下11查看文件编码.docx

    Linux下11查看文件编码.pdf

    Linux下11查看文件编码.pdf

    linux 编码文件

    本主题将深入探讨Linux中的编码文件,以及如何处理它们。 标题中提到的“Linux编码文件”主要指的是与系统字符集设置相关的文件。在Linux中,这些文件通常位于`/usr/lib/locale`目录下。此目录包含了系统支持的所有...

    文件操作工具类,包含判断文件编码适合windows和linux,文件压缩打包,判断文件格式,拷贝文件等内容

    文件操作工具类,包含判断文件编码适合windows和linux,文件压缩打包,判断文件格式,拷贝文件等内容

    使用 Java 对 Linux 下文件编码格式进行批量转换源代码

    测试使用说明: 1。将 字符集编码格式为 GB2312 的文件 test0.java,test...使用本工具可以对 Linux 下文件的字符集编码格式进行批量转换。只需适当配置一下,可以批量处理各种文件格式的文件,如 *.txt,*.java 等等。

    Linux系统中关于文件编码以及编码的转换

    ### Linux系统中关于文件编码及编码转换的详细解析 #### 一、文件编码的基本概念 在计算机科学领域,文件编码是指计算机系统用来表示文本信息的一种方式。不同的编码方式支持不同的字符集,例如英文字符通常使用...

    mac文件编码转换

    在Mac操作系统中,文件编码转换是一项重要的任务,尤其对于处理包含不同字符集的文本文件时。常见的文件类型如txt、xml、css、htm、html、php、jsp等,它们可能因开发环境或语言设定的不同而采用不同的编码方式,如...

    window 下打开linux 文件查看器

    在Notepad++中打开Linux文件的步骤: 1. 启动Notepad++。 2. 使用“文件”菜单打开你需要查看的Linux文本文件。 3. 如果文件显示乱码,可以在“编码”菜单中选择正确的字符编码,如“以UTF-8无BOM格式读写”。 4. ...

    linux网络编码基础

    linux基础 命令 shell编码 以及对linux理解 进程管理 文件管理 文件传输

    linux下6410平台视频硬编码示例

    在"linux下6410平台视频硬编码示例"中,"h264_env_linux"可能是一个包含示例代码或者配置文件的压缩包,用于演示如何在Linux环境下设置和使用MFC进行H.264编码。这个压缩包可能包括以下内容: 1. **驱动源码**:...

    linux字符集编码指南

    #### 三、利用iconv命令进行文件编码转换 除了使用编程方式外,还可以直接使用命令行工具`iconv`来进行文件的编码转换。这种方式更加简单直接,适用于简单的编码转换需求。 **命令格式**:`iconv [选项] [输入文件...

    linux core文件生产设置与编码

    以上这些就是关于Linux下core文件生成设置及编码的知识点。通过合理配置这些参数,可以在程序异常退出时获取完整的内存映像,极大地方便了程序的调试和错误定位。需要注意的是,在生产环境中应谨慎开启core文件生成...

    文件编码批量转换工具(不用积分)

    2,文件编码自动识别,所以使用的时候不用提供原文件的编码;识别不了不会转换,保证项目文件的安全 3,支持utf-8-bom编码 4,兼容Linux & Windows & Mac系统 5,不用安装,只要机器有JDK就可以使用 需要源码的请...

    Linux系统文件乱码转码工具

    在Linux系统中,由于Windows和Linux之间对文本文件编码的不同处理,经常会出现文件在Linux环境下显示为乱码的情况。这主要是因为Windows系统普遍使用的是UTF-16或GBK编码,而Linux系统通常采用UTF-8编码。为了克服这...

    Linux文件管理Linux的文件系统

    1. 普通文件:包括文本文件(ASCII编码,可编辑)和二进制文件(不可直接查看或修改)。 2. 目录文件:存储的是目录内的文件名和子目录名。 3. 设备文件:位于/dev目录下,用于用户访问物理设备,分为块设备(如硬盘...

Global site tag (gtag.js) - Google Analytics