Linux下修改文件名编码,convmv命令
日期:2011-12-09 阅读:63 分类:Linux资料
今天在公司tar打包一些编码为GBK的中文文件名的文件时打包碰到的问题。我自己的locale是en_US.UTF8,那台主机的环 境是zh_CN.GBK,因此tar不管怎么打包,都会使文件名出现问题。而如果采用7z打包,虽然可以解决乱码问题(7z会记录下文件名的编码),但会 丢失文件属性,所以不打算采用。
google了下发现可以通过convmv来进行解决:
convmv -f GBK -t UTF8 -r --notest target
其中-f是源编码,-t是目标编码,-r是递归处理目录,–notest是不移动,实际上对文件进行改名(actually do rename the files),target是目标目录。其余参数可以参考man或者-h。
另外一个方案是google到了一个python脚本,通过python的tarfile包解决问题,感兴趣的可以看看这个link: http://superuser.com/questions/60379/linux-zip-tgz-filenames-encoding-problem
来自:vifix.cn
相关文章
- linux下vi修改文件用法 2010-06-25
- Linux通过命令获取到当前日期作为变量使用 2011-06-26
- Linux SSH命令大全 2009-08-17
- Linux Shell下后台运行及其前台的转换 2011-09-20
- Linux IP地址的查看及其修改 2011-06-26
- 修改谷歌浏览器Chrome的临时文件保存地址 2011-10-26
- 尝试把js与css写在同一个文件里 2008-12-16
- 记录一个文件编码问题 2008-11-05
- FSO中文件夹的基本操作 2009-05-19
- Javascript URL编码方法的比较 2008-09-02
- Flex编码的过程分析 2008-12-22
- 基于javascript的base64编码实现 2009-03-15
- Adodb.Stream读取和写入UTF-8编码的文件 2011-11-30