linux下中文文件名乱码怎么办

问题:

在windows上使用ftp上传文件到Linux上,中文名称在Linux系统中显示为乱码。虽然将Linux的env设置了LANG=en_US.UTF-8,并且本地的Shell客户端编码也设置成UTF-8,但在Shell中(或通过http访问),仍是乱码。

原因:

Windows 的文件中文编码认为GBK,压缩或者上传后,文件名还会是GBK编码,而Linux中文件名编码为UTF8,由于编码不一致所以导致了文件名乱码的问题,解决这个问题需要对文件名进行转码。

(推荐教程:linux教程

解决方法

yum install convmv
convmv -f gbk -t utf-8 -r --notest /home/要操作的文件

常用参数:

-r 递归处理子文件

–notest 真正进行操作,认情况下是不对文件进行真实操作

–list 显示所有支持的编码

–unescap 可以做一下转义,比如把%20变成空格

-i 交互模式(询问每一个转换,防止误操作)

相关视频教程推荐:linux视频教程

相关文章

insmod和modprobe加-f参数导致Invalid module format错误 这...
将ArchLinux安装到U盘 几个月前入门Arch的时候上网搜了不少安...
1、安装Apache。 1)执行如下命令,安装Apache服务及其扩展包...
一、先说一下用ansible批量采集机器信息的实现办法: 1、先把...
安装配置 1. 安装vsftpd 检查是否安装了vsftpd # rpm -qa | ...
如何抑制stable_secret读取关键的“net.ipv6.conf.all.stabl...