例如,我想下载一篇题为《数学归纳法的发展历程》的论文,下载工具是Chrome,但是下载下来的文件会变成Êýѧ¹éÄÉ·¨µÄ·¢Õ¹Àú³Ì_·ë½ø.pdf
目前已经想出一种方法:先压缩成zip文件,然后设定LANG=C用7z解压,解压后再转换编码
zip a.zip *
LANG=C 7z x a.zip
convmv -f gbk -t utf8 --notest -r .
压缩再解压这种方法无疑过于繁琐,而且文件数量多的话肯定不合适,毕竟这应该是一个只涉及到重命名文件的问题,不知各位V友有什么简便的方法。
本人知识背景:非程序员,希望能够用Shell或者Python解决这个问题
非常感谢!
1
xinhugo 2015-03-28 17:41:40 +08:00
|
2
limbo0 2015-03-28 18:21:28 +08:00
许多论文没有pdf!
许多pdf里面都是乱码! |
4
muzuiget 2015-03-28 18:28:48 +08:00 6
这种烂网站几乎都是坚守 GBK 编码的,我老早前就喷过了,还写了个 Firefox 扩展
http://qixinglu.com/post/redisposition.html 至于本地的乱码文件名呢(解压一些 zip 经常遇到),自己撸了个 Python 脚本解决。 https://github.com/muzuiget/python-scripts/blob/master/utf8-filename.py $ ls Êýѧ¹éÄÉ·¨µÄ·¢Õ¹Àú³Ì_·ë½ø.pdf $ utf8-filename * 数学归纳法的发展历程_冯进.pdf |
5
Goooogle 2015-03-28 18:33:54 +08:00 2
|
6
lusyoe 2015-03-28 19:16:46 +08:00 via Android
如果用的是Ubuntu可以下一个nautilus扩展解决这个问题,nautilus-filename-repairer
|
9
hitsmaxft 2015-03-28 19:25:55 +08:00 via iPhone
alas convmv=convmvfunc(){mv $1 "$(echo $1|iconv -f gbk)" }
大概这样,手机上不好验证 |
10
s51431980 2015-03-28 19:26:27 +08:00
试试 convmv
``` sudo apt-get install convmv man convmv ``` |
12
RecursiveG 2015-03-28 20:16:22 +08:00 1
echo -n 'Êýѧ¹éÄÉ·¨µÄ·¢Õ¹Àú³Ì_·ë½ø.pdf' | iconv -f utf8 -t iso-8859-1 | iconv -f gbk -t utf8
|
13
ynyounuo 2015-03-28 20:33:29 +08:00
@RecursiveG
正想说可以用 iconv |
14
kongdeyuan 2015-03-29 01:53:27 +08:00
解决的办法 确实很多学习了,感谢。我这条回复属于垃圾信息吗。。。
|
15
xieyudi1990 2015-03-29 08:36:24 +08:00 via iPhone
每次在Linux下用tar打包文件名带中文的文件时, 发给用gbk的中文Windows的人解压也是各种问题.
|
16
hitsmaxft 2015-03-29 10:27:25 +08:00 1
@hitsmaxft 最后来个完整版本
``` convmv(){ mv "$1" $(echo -n "$1" | iconv -f UTF-8 -t ISO-8859-1 | iconv -f gbk)} ``` ``` convmv 'Êýѧ¹éÄÉ·¨µÄ·¢Õ¹Àú³Ì_·ë½ø.pdf' ``` |
17
vjnjc 2015-03-29 23:41:36 +08:00
enca -L zh_CN -x UTF-8 file1
试试这个,我一直用它来搞定gbk乱码的 |
18
yanwen 2016-07-02 15:21:10 +08:00
|
19
wangzilinn 2018-11-22 21:40:05 +08:00
|