`

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

 
阅读更多

如果你需要在Linux中操作windows下的文件,那么你可能会经常遇到文件编码转换的问题。Windows中默认的文件格式是GBK(gb2312),而Linux一般都是UTF-8。下面介绍一下,在Linux中如何查看文件的编码及如何进行对文件进行编码转换。

 

 

查看文件编码
在Linux中查看文件编码可以通过以下几种方式:
1.在Vim中可以直接查看文件编码
:set fileencoding
即可显示文件编码格式。
如果你只是想查看其它编码格式的文件或者想解决用Vim查看文件乱码的问题,那么你可以在
~/.vimrc 文件中添加以下内容:

set encoding=utf-8 fileencodings=ucs-bom,utf-8,cp936

这样,就可以让vim自动识别文件编码(可以自动识别UTF-8或者GBK编码的文件),其实就是依照fileencodings提供的编码列表尝试,如果没有找到合适的编码,就用latin-1(ASCII)编码打开。

 

 

 

文件编码转换
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

 

iconv -f gbk -t utf8 linux常用命令.txt > linux常用命令.txt.utf8

 

 

 

文件名编码转换:

 

从Linux 往 windows拷贝文件或者从windows往Linux拷贝文件,有时会出现中文文件名乱码的情况,出现这种问题的原因是因为,windows的文件名 中文编码默认为GBK,而Linux中默认文件名编码为UTF8,由于编码不一致,所以导致了文件名乱码的问题,解决这个问题需要对文件名进行转码。

在Linux中专门提供了一种工具convmv进行文件名编码的转换,可以将文件名从GBK转换成UTF-8编码,或者从UTF-8转换到GBK。

 

首先看一下你的系统上是否安装了convmv,如果没安装的话用:
yum -y install convmv
安装。

 

 

下面看一下convmv的具体用法:

convmv -f 源编码 -t 新编码 [选项] 文件名

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

convmv -f UTF-8 -t GBK --notest utf8编码的文件名

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

分享到:
评论

相关推荐

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

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

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

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

    批量文件名编码转换.7z

    总之,"批量文件名编码转换.7z" 解决了IT领域中常见的文件名编码不兼容问题,通过批量URL编码转换,使文件在不同环境间能顺畅地传输和共享。这个工具的使用有助于提升工作效率,减少因编码差异导致的文件管理困扰。

    Linux下中文文件名乱码问题的详解 - CSDN博客1

    在这种情况下,我们需要确保在处理文件名时进行正确的编码转换。在PHP中,可以使用`iconv`或`mb_convert_encoding`函数来进行编码转换。 文章中提到,作者在项目中遇到了生成的压缩包文件(可能是通过tar或gzip命令...

    linux下的文件名乱码,转为正常

    - **UTF-8**:UTF-8是Unicode的一种实现方式,广泛应用于Linux和网络,它能兼容ASCII编码,并且在大多数情况下是默认的文件名编码。 - **locale**:在Linux中,locale用于定义本地化设置,包括字符编码、日期格式...

    JAVA文件编码转换工具1.50base[jar文件]

    jar文件,linux下终端使用 java -jar 文件名运行 选择文件 重命名文件为原文件名+".bak" 执行编码转换,创建新文件为原文件名 选择文件夹 文件过滤生效 附带GBK编码文件news.sql 有问题请邮件我:hj-545@qq.com ...

    ckfinder修改文件名称

    他们可能添加了对文件名编码转换的逻辑,比如使用`URLEncoder.encode()`和`URLDecoder.decode()`进行URL编码和解码,或者使用`CharsetEncoder`和`CharsetDecoder`进行更细致的字符集转换。 修改源码并重新打包成jar...

    ev1转换器ev1转换器

    标题中的“ev1转换器”很可能是指一种工具或软件,用于将特定格式的文件(可能是EV1编码的视频文件)转换成其他更通用或兼容的格式。EV1可能是一种特定的编码格式,常用于视频录制或存储,尤其在专业视频制作领域。...

    Linux下批量修改文件编码

    本文详细介绍了如何在Linux环境下批量修改文件编码的方法,通过具体的示例脚本演示了如何将`.php`文件从GB2312编码转换为UTF-8编码。掌握了这些技巧后,可以帮助我们更高效地处理跨平台文件交互中的编码问题。

    Java处理中文文件名-压缩中文名字的文件.rar

    这些类提供了诸如`getFileName()`、`resolve()`和`createFile()`等方法,但在处理中文文件名时,我们需要特别注意编码转换。 例如,如果你有一个包含中文字符的字符串,你可以使用` Files.createFile(Path path)`来...

    将VB格式文件转换为Unix格式文件

    - 转换文件:在命令行中输入`dos2unix 文件名`,例如`dos2unix myvbfile.txt`,即可将myvbfile.txt从VB格式转换为Unix格式。 4. 自定义脚本转换: - 对于没有`dos2unix`工具的情况,可以编写简单的脚本来完成转换...

    部署到linux服务器文件名乱码问题

    当文件从Linux服务器传输到Windows服务器再返回Linux服务器时,文件名的编码经历了两次转换,如果没有正确处理编码转换,则容易出现乱码。 2. **避免乱码的方法**:为了避免此类问题的发生,可以在传输过程中尽量...

    取压缩包中(RAR)全部文件名.rar

    RAR是一种流行的压缩格式,由RARLAB开发,它提供了高效的数据压缩和文件分卷功能。本话题聚焦于如何从RAR压缩包中获取所有文件的名称,这对于管理和预览文件内容尤其有用。以下是一些关于这个主题的关键知识点: 1....

    Ubuntu Linux系统下文件编码转换的技巧

    Ubuntu Linux 系统下文件编码转换是一个常见的问题,对于程序员和开发者来说尤其重要。在 Ubuntu 系统下,默认的文件编码是 utf-8 的,但是有些时候,我们需要把文件从默认的 gbk 编码转换成 utf-8 编码,以便更好...

    linux环境音频编码

    在Linux环境中进行音频编码,尤其是将.wav格式转换为.aac格式,涉及到许多核心技术和工具。以下是一些关于这个主题的重要知识点: 1. **音频编码格式**:音频编码是为了压缩音频数据,减少存储空间和网络传输的带宽...

    Linux下三星S5230手机视频格式转换器

    总的来说,通过Linux和FFmpeg,我们可以高效地为三星S5230手机转换合适的视频格式,确保在小巧的屏幕上获得良好的观看体验。记得在转换前备份原始视频,以防万一,并根据实际需要调整转换参数。

    linux文件转化

    2. **文件系统的限制**:如果文件系统为NTFS或FAT格式,则在进行文件名编码转换时需要注意,因为这些文件系统可能无法支持某些特殊字符。 通过以上方法,可以有效地解决Linux与Windows之间文件传输时遇到的编码问题...

    linux乱码问题的解决办法

    - **转换文件名编码**:例如,将所有`.mp3`文件名从GBK编码转换为UTF-8编码,可以使用`convmv -f GBK -t UTF-8 *.mp3`命令。默认情况下,Convmv仅显示转换效果而不实际执行转换操作。要实际执行转换,需要加上`--no...

    解决Jave在linux下转为MP3时异常

    在Linux环境下,使用Java进行音频文件转换,特别是将其他格式的音频文件转为MP3格式时,可能会遇到一些异常情况。这些异常可能涉及到编码问题、依赖库缺失、权限不足或者命令行工具配置不当等。本篇文章将深入探讨...

Global site tag (gtag.js) - Google Analytics