有什么压缩软件能差异压缩 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
sungo
V2EX    问与答

有什么压缩软件能差异压缩

  •  
  •   sungo 2024-01-28 16:21:09 +08:00 1794 次点击
    这是一个创建于 704 天前的主题,其中的信息可能已经有所发展或是发生改变。

    有一堆 PDF ,单个不大,里面就一些内容更改了。用了 git gc 压缩后,900m 的共计 700 个文件,最后能压缩到 18M 。但是 git 压缩毕竟不是正统,有没有差异压缩的软件能实现这个特定的文件压缩

    6 条回复    2024-01-29 17:35:24 +08:00
    oiken
        1
    oiken  
       2024-01-28 22:42:11 +08:00
    我四年前做安卓时做了类似功能的软件,把两百个只是内置渠道号不同的 apk ,对比差异压缩成一个文件,上传到服务器,再服务器解压缩还原成两百个 apk 。如果你需要,请站内联系我,或发邮件到邮箱 oiken @ qq.com

    以下是软件帮助信息:

    Usage: zipsame [-hvVu] [-D dirPath] [-d dirName] [-Z zipFilePath] [-z zipFileName] [-b blockSize] [-c compareFileName]

    Options:
    -D dirPath
    设置 dirPath 作为文件夹的路径,有就忽略 d 提供的文件夹名字
    -V verbose
    设置 verbose 输出日志,默认不输出
    -Z zipFilePath
    设置 zipFilePath 作为 zip 文件的路径,有就忽略 z 提供的 zip 文件名字
    -b blockSize
    设置 blockSize 作为文件块的切分大小,最小为 (default 32768)
    -c compareFileName
    设置 compareFileName 作为源文件夹里参照物文件的名字,默认为 d/D 文件夹里第一个有文件名的文件
    -d dirName
    设置 dirName 作为当前目录下的文件夹名字
    -h 压缩示例: ./zipSame -D /xxx/ApkDir -z /xxx/ApkDir.zip
    解压示例: ./zipSame -u -z /xxx/ApkDir.zip -D /xxx/ApkDir-unzip
    -u 解压缩文件,默认是压缩文件夹
    -v 版本信息
    -z zipFileName
    设置 zipFileName 作为当前目录下的 zip 文件
    bihui
        2
    bihui  
       2024-01-28 23:08:49 +08:00
    差异压缩是啥?
    jim9606
        3
    jim9606  
       2024-01-29 01:17:55 +08:00
    git 存储每个版本的文件都是整份存的,只是会用 deflate 压缩一下,这也是为啥 git 不适合管理大型二进制文件。
    要不你考虑下把这堆 pdf 全放进一个固实压缩的 7z 包里,字典大小调大些,说不定 LZMA2 就帮你找出重复块来了。


    @oiken
    这种方案对付 v1 签名包是可行的,v2/v3 签名的会比较麻烦,要求确定性的 zip 打包器。允许破坏签名的无视吧。
    oiken
        4
    oiken  
       2024-01-29 01:33:50 +08:00 via Android
    @jim9606 好的,受教了
    body007
        5
    body007  
       2024-01-29 11:07:20 +08:00
    @jim9606 好思路,调教压缩软件找到重复数据实现高压缩比。
    sungo
        6
    sungo  
    OP
       2024-01-29 17:35:24 +08:00 via Android
    @jim9606 用这个 lzma 压缩后,发现只有 8m 。
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2025 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 24ms UTC 00:23 PVG 08:23 LAX 16:23 JFK 19:23
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86