不完美

    技术2022-05-20  66

    不完美

     

     

     

    无论你Linux用得多么逍遥自在,总要与周围的Windows交流,文件或者消息。传

     

    递文件的一个方法是使用ZIP压缩包。

     

     

     

    这个时候麻烦就来了。

     

     

     

    在windows下压缩的文件,在Linux解压以后,文件名成了乱码;在Linux下压缩

     

    的文件,在Windows下也是乱码。

     

     

     

    Windows和windows之间是没有问题的。如果你只用Windows的话,这个麻烦反倒是

     

    不存在。

     

     

     

    Linux尚是小众,没资格说 如果你只用Linux的话,这个麻烦也不存在。

     

     

     

    这个麻烦的原因是,Windows的文件系统的编码是GBK,而Linux,比如Ubuntu,

     

    使用了UTF8作为文件系统的编码。

     

     

     

    编码无所谓好坏,就像世界上的语言无所谓好坏。一群中国人大读“法语是世界

     

    上最伟大的语言“,那是因为念课文。

     

     

     

    只见过windows的人,可能连文件系统是啥都不知道,更不用说这东西居然也有编

     

    码。

     

     

     

    但是,少数人确实是存在的。

     

     

     

    当多数人缺少对少数人的包容的时候…少数人就得点包容多数人的胸怀。这个说起

     

    来话长,就此打住。

     

     

     

    所以,我不用7Z压缩,虽然它那么先进。因为项目组的同学们习惯使用ZIP或者

     

    RAR。

     

     

     

    所以,我还是有机器里装着IE游览器,因为网银啥的。

     

     

     

    理想主义是可以存在的,但是,不能用来要求别人。

     

     

     

    显然不能要求合作者把WINDOWS文件系统改成UTF8;我也不想把LINUX文件系统改

     

    成GBK,因为我在EMACS写文档什么的,要在UTF8下进行。

     

     

     

    怎么办?

     

     

     

    网上有人说,没招。

     

     

     

    还有人说,有一个工具,叫convmv,可以把文件名改为某种编码。不幸的是,我

     

    用它改的名字,压缩以后在windows下看来,只是与UTF8产生的乱码

     

    不同,但仍是乱码。而且,这些文件名的有些乱码组合是非法文件名,不能被压

     

    到压缩包里。

     

     

     

    有人做了个python脚本,能把ZIP中的文件名改为UTF8,然后再解压。但是这并

     

    不能解决发给WINDOWS用户的压缩包里仍是乱码。

     

     

     

    ZHUMAO把文件系统改成了GBK,可是我需要UTF8。

     

     

     

    我试了一大顿,没有找到解决之道。

     

     

     

    也许,先设置locale,然后再压缩,然后再把locale改回来,说不定是个解决之

     

    道。但是我觉得太麻烦了。说不定,emacs下的五笔还得调整。

     

     

     

    所以,准备暂时拒绝接收压缩包里有中文文件名的;而发出的包就好办了,不起

     

    中文文件名。

     

     

     

    有的朋友可能想到了一个更聪明的办法,就是不使用Linux,或者干脆不允许

     

    Linux存在。或者反过来让windows消失,这样矛盾就完全消失了。

     

     

     

    这当然解决了问题。不过,还是不说了吧。

     

     

     

    今天到这。

     

     

     


    最新回复(0)