关于linux下几种常见压缩方法“乱码”与否的有趣比较

所谓“常见”大概只能说是我见过的,tar, gz, bz2, zip, 7z, jar。
标题中的乱码指在linux+utf8系统中压好的中文文件在windows下解压后文件名乱码。

tar 主要用于归档文件,本身并不负责压缩。gz和bz2则只能压缩单个文件,所以常常与tar组合使用,这样就形成了常见的tar.gz和tar.bz2。tar压缩后乱码,tar.gz和tar.bz2也就跟着错。有趣的是,bz2可以正确的处理中文件文件名,但gz则出现乱码。
zip可以打包多个文件,但压缩后乱码。怀疑gz乱码的根源就源于zip。jar的问题同zip。
相较而言7z算是表现就好的,既可以打包多个文件,又可以在打包时正确的处理中文文件名。唯一发现的一个缺点是,在gnome下file-roller无法压缩文件夹。这应该是file-roller的问题。希望不久后能会被修正。

结论:
如果使用linux+utf8系统,压缩中文文件时最好使用7z,以免无法在windows正常解压。压缩文件夹时可能得暂时使用命令行了。

PHP 代码:
7z a dir.7z dir

 

可以试试xarchive,它可以支持tar、gz、bz2、zip、rar、arj、ace、7z等几乎所有的压缩文件格式,本身是个图形界面的压缩包管理器,自身不能压缩、解压缩文件,靠调用系统中的命令行程序来完成,和file-roler一样,并且还可以根据需要扩展。
另外有个xarchiver是准备集成到xfce的thunar文件管理器里的,就像nautilus集成的file-roler一样,而xarchive是独立的gtk2程序不要搞混了。

 

二 linux和win之间不乱码

一个中文文件名的文件,在win和linux之间复制,文件名想不乱码怎么办---只要win和linux的文件名编码相同即可

win 文件名编码方案=? 但是win文件名“汉字”=baba,d7d6
linux 文件名编码方案=utf-8 或 gb18030
结论:linux 使用gb18030编码即可和win兼容

 

http://www.linuxsir.org/bbs/showthread.php?t=263669

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值