Ubuntu Linux 下文件名乱码(无效的编码)的快速解决办法

文件是在WIndows 下创建的,Windows 的文件名中文编码默认为GBK,而Linux中默认文件名编码为UTF8,由于编码

不一致所以导致了文件名乱码的问题,解决这个问题需要对文件名进行转码。文件名转码工具convmv没安装的话

用下面的命令安装:

sudo apt-get install convmv

复制代码

convmv 使用方法:

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

常用参数:

-r 递归处理子文件夹

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

–list 显示所有支持的编码

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

应用举例:(看最后几段就是批量转化的结果)

[email protected]:~$ sudo apt-get install convmv
[sudo] password for ishagua: 
正在读取软件包列表... 完成
正在分析软件包的依赖关系树       
正在读取状态信息... 完成       
下列【新】软件包将被安装:
  convmv
升级了 0 个软件包,新安装了 1 个软件包,要卸载 0 个软件包,有 0 个软件包未被升级。
需要下载 20.2kB 的软件包。
解压缩后会消耗掉 90.1kB 的额外空间。
获取:1 http://cn.archive.ubuntu.com/ubuntu/ lucid/universe convmv 1.12-2 [20.2kB]
下载 20.2kB,耗时 0秒 (103kB/s)
选中了曾被取消选择的软件包 convmv。
(正在读取数据库 ... 系统当前总共安装有 151915 个文件和目录。)
正在解压缩 convmv (从 .../archives/convmv_1.12-2_all.deb) ...
正在处理用于 man-db 的触发器...
正在设置 convmv (1.12-2) ...
[email protected]:~lsBeyond.?.[25d.?.[25周年精选.CD1].专辑.(MP3)公共的视频文档音乐examples.desktop模板图片下载桌面ishagua@ishagua?laptop:

cd 下载/Beyond
[email protected]:~/下载/Beyondls01??????(BrainAttack).mp310??????(????).mp302????(Building).mp311??????(????).mp303??????(′8512????????).mp312Myth(′89???????).mp304TheOtherDoor(′86? ?????).mp313Europe(′88demo).mp305??(′86??????)????????.mp314?′???????(??? ??).mp306????????(′86???).mp315UTwo(′88demo).mp307???????(?????).mp316UTwo(′91demo).mp308???????(′88???).mp317SouthernAllStar(′91demo).mp309LongWayWithoutFriends(′[email protected]?laptop: /下载/Beyond

convmv -f GBK -t UTF-8 --notest *.mp3
Your Perl version has fleas #37757 #49830 
mv "./01 ? ? (Brain Attack).mp3"        "./01脑部侵袭 (Brain Attack).mp3"
mv "./02 (Building).mp3"        "./02大厦 (Building).mp3"
mv "./03 ? ? (‘85 12 ).mp3"        "./03永远等待 (‘85 12吋混音版).mp3"
mv "./04The Other Door (‘86? ? ).mp3"        "./04The Other Door (‘86台北现场).mp3"
mv "./05 (‘86 ? ? ) - ? .mp3"        "./05冲 (‘86高山现场) - 高速啤机.mp3"
mv "./06 (‘86 ? ).mp3"        "./06金属狂人 (‘86现场).mp3"
mv "./07 ? ? (? ).mp3"        "./07旧日的足迹 (全长版).mp3"
mv "./08 ? (‘88 ? ).mp3"        "./08再见理想 (‘88现场).mp3"
mv "./10 ( ).mp3"        "./10第三街 (快版).mp3"
mv "./11 ( ).mp3"        "./11主题曲 (慢版).mp3"
mv "./12Myth (‘89 ? ).mp3"        "./12Myth (‘89 伊馆现场).mp3"
mv "./14 ′ ( ? ).mp3"        "./14勇闯新世界 (电台版).mp3"
Ready!
[email protected]:~/下载/Beyond$

主要方法:convmv -f GBK -t UTF-8 --notest -r *[把当前文件夹下所有乱码文件名改过来]

时间: 2024-10-21 14:44:23

Ubuntu Linux 下文件名乱码(无效的编码)的快速解决办法的相关文章

【转】Ubuntu Linux 下文件名乱码(无效的编码)的快速解决办法

原博文地址:http://www.cnblogs.com/york-hust/archive/2012/07/07/2580388.html 文件是在WIndows 下创建的,Windows 的文件名中文编码默认为GBK,而Linux中默认文件名编码为UTF8,由于编码 不一致所以导致了文件名乱码的问题,解决这个问题需要对文件名进行转码.文件名转码工具convmv没安装的话 用下面的命令安装: sudo apt-get install convmv 复制代码 convmv 使用方法: convm

Linux 下文件名乱码(无效的编码)的解决办法

文件是在WIndows 下创建的,Windows 的文件名中文编码默认为GBK,而Linux中默认文件名编码为UTF8,由于编码不一致所以导致了文件名乱码的问题,解决这个问题需要对文件名进行转码. sudo apt-get install convmv convmv 使用方法:convmv -f 源编码 -t 新编码 [选项] 文件名常用参数:-r 递归处理子文件夹–notest 真正进行操作,默认情况下是不对文件进行真实操作–list 显示所有支持的编码–unescap 可以做一下转义,比如把

CentOS 7.4 Linux 下文件名乱码(无效的编码)的快速解决办法

文件是在WIndows 下创建的,Windows 的文件名中文编码默认为GBK,而Linux中默认文件名编码为UTF8,由于编码 不一致所以导致了文件名乱码的问题,解决这个问题需要对文件名进行转码.文件名转码工具convmv没安装的话 用下面的命令安装: =============================================================================[[email protected] 桌面]# yum -y install convmv

JAVA生成文件在linux下文件名乱码

TOMCAT + Java + Linux 问题描述 在JAVA中生成文件,文件名生成在windows下就正常,但是在linux下生成就乱码. 解决方式 代码中文件名用这样的方式转换 String remoteFileName = new String(sendModel.getString("fileName").getBytes("GBK"), System.getProperty("sun.jnu.encoding")); 顶

Linux下修改MySQL数据库字符编码为UTF-8解决中文乱码

由于MySQL编码原因会导致数据库出现乱码. 解决办法: 修改MySQL数据库字符编码为UTF-8,UTF-8包含全世界所有国家需要用到的字符,是国际编码. 具体操作: 1.进入MySQL控制台 >mysql -uroot -p #输入密码进入 >status; #查看当前MySQL运行状态,如下图所示: 2.修改mysql配置文件 [[email protected] ~]# vi /etc/my.cnf #在[client]段增加下面代码 default-character-set=utf

Linux下Qt5.6 Fcitx无法输入中文输入解决办法

Qt5.6的解决办法和之前的版本有点不同,方法如下:首先安装 fcitx-frontend-qt5.然后执行: 123 sudo cp /usr/lib/x86_64-linux-gnu/qt5/plugins/platforminputcontexts/libfcitxplatforminputcontextplugin.so /opt/Qt5.6.0/Tools/QtCreator/lib/Qt/plugins/platforminputcontexts/ sudo cp /usr/lib/

linux 下shell 显示-bash-4.1不显示路径解决办法

1.原因分析: 没有.bash_profile这个文件,可以通过配置此文件恢复路径显示. 2.配置步骤: (1).vim ~/.bash_profile 在此加入如下命令: export PS1='[\[email protected]\h \w]\$' (2).保存后执行source ~/.bash_profile 配置完成. 3.解释/etc/profile   ~/.bash_profile  ~/.profile 首先在登录linux时,启动/etc/profile 文件,再启动用户目录

转:Ubuntu系统下出现eclipse找不到JRE的解决办法

在Ubuntu的某些版本下,比如10.10,会出现以下奇怪问题:1. 安装jdk我下载的jdk是bin格式的,直接运行解压,得到一个文件夹.这个文件夹作为jdk的安装目录,可以拷贝到任意目录.然后配置环境变量~/.bashrc,在最后添加:export JAVA_HOME=<jdk install dir>export JRE_HOME=$JAVA_HOME/jreexport PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH重启机器. 2. 安装eclipse直

Linux下utf-8 BOM 的检查和删除 (65279错误解决办法)

Java代码在转换为UTF-8编码后,Eclipse编译运行没有问题,但是用Maven编译时,抛出非法字符65278错误. 原因在于,转换后文件头部带有BOM信息,而Maven不支持,删掉文件头的BOM信息即可. 可以通过以下命令,在命令行中批量删除文件中BOM信息: perl -pi.bak -w -e 's/^\xEF\xBB\xBF' *.java 然后,删除.bak后缀的备份文件: rm *.java.bak 现在可以查看文件中是否,还带有BOM信息,可以通过以下命令查询: grep -