linux中文文件名乱码怎么解决

啊,在 Linux 上处理 Windows 文件时,编码问题真是令人头疼。

当时我很失落。
2 02 2 年,我们在杭州有一个项目要做。
我的Windows服务器上有很多文件,当我直接将它们拖到我的Linux计算机上时,它们都损坏了。

首先,我们来看看如何检查文件编码。
最简单的方法是使用 file 命令。
例如,如果您有一个名为 data.txt 的文件,请键入 file data.txt。
它告诉您文件类型是什么,有时会提到编码,但这并不总是准确的。

如果你想知道确切的细节,你应该使用 vim。
如果你打开一个文件并输入 :set fileencoding?,vim 会告诉你它当前使用的编码。
有时可能是utf-8 ,有时可能是cp9 3 6 (GBK的子集)。

记得第一次在Windows上用vim打开文本文件时,字符乱码,屏幕完全混乱。
我很困惑,想知道它是什么编码。
只需在 ~/.vimrc 中添加一些内容即可。
只需设置encoding=utf-8 和fileencodings=ucs-bom,utf-8 ,cp9 3 6
如果执行此操作后再次打开文件,vim 将首先尝试 utf-8 ,然后是带 BOM 的 utf-8 ,然后是 cp9 3 6 (GBK)。
如果这些都无法识别,您最终会选择 latin-1 (它是 ASCII 扩展,默认情况下可以识别英文字符)。

例如,我在Windows中生成了一个log.txt文件,编码应该是GBK。
使用 vim log.txt 打开它。
如果vim可以识别为cp9 3 6 ,则内容可能没问题。
中文如果识别成utf-8 肯定会乱。

转换编码怎么样?在 Linux 上,使用 iconv 工具。
例如,如果您获得了 data_gbk.txt 并希望在 UTF-8 系统上使用它,则可以键入 iconv -f cp9 3 6 -t utf-8 data_gbk.txt -o data_utf8 .txt。

-f代表源文件编码,cp9 3 6 是Windows默认的。
-t 表示目标编码,utf-8 源文件名为data_gbk.txt,输出文件名为data_utf8 .txt。

请记住,在转换时,有时源文件编码可能是错误的,或者目标编码可能选择不正确,这可能会导致转换后的文件变得更混乱,甚至出现一大块损坏的字符。
我有时是一个相当极端的人。
我认为编码是一项非常烦人的工作,你必须小心。

文件编码怎么查是什么文件

说白了,检查文件编码的方法只有几种。
这取决于你想要快速还是准确。

我先说最重要的事情。
使用像Notepad++这样的编辑器会更容易。
只需打开文件并查看状态栏或右键单击菜单即可。
去年我们在做这个项目的时候,发现半夜出现了创纪录的几百兆的乱码。
我们为此工作了两个小时。
最后我们发现编辑器默认使用GB2 3 1 2 ,结果就停了。
只需将其更改为 UTF-8 秒即可。
还有一点,在 Linux 上使用 file -i filename 非常实用。
例如,在 macOS 上测试图像文件时,输出会直接包含 charset=utf-8 的字样,这比猜测要好。
还有一个非常重要的细节。
当您看到非常小的文件(例如小于几百千字节的文本)时,不要相信在线工具。
他们的分析很容易受到干扰。
使用命令行更加稳定。

一开始我以为Python库绝对有能力,但是我发现处理非常大的文件时内存会爆炸。
后来我发现直读可以救我。
等等,还有一件事,Windows fc/b 实际上可以检测病毒,但别指望它会告诉你加密是 GBK 还是 GB2 3 1 2 这个东西就是测试文件是否一致。

我的建议是对于小文件使用命令行,对于大文件使用 Notepad++。
如果这不起作用,请编辑 Python 脚本。
但不要使用在线工具来处理底层数据,因为传输过程可能会被篡改。

文件名乱码怎么恢复原名

恢复混淆的文件名:
1 检查编码:右键重命名,确认原名,用Notepad++查看编码并转换。
2 .修复系统编码:调整Windows的区域设置,调整macOS的语言和区域。
3 .批量重命名:使用BulkRenameUtility或NameMangler。
4 、解压混乱的压缩包:Bandizip或7 -Zip选择UTF-8 编码解压。
5 . 恢复损坏的文件:Recuva 或 EaseUSDataRecovery 恢复原始文件名。
6 、U盘/硬盘混淆:更换接口/电脑检查并修复错误。
7 、网络传输混乱:重新下载或请求重新发送UTF-8 编码的文件。
8 . 注意:修复前请先备份。
首先修复损坏的文件。
加密文件需要使用原版工具进行解密。