![不改变扩展名可以压缩文件吗?](https://linux22.com/image/1569850/%E4%B8%8D%E6%94%B9%E5%8F%98%E6%89%A9%E5%B1%95%E5%90%8D%E5%8F%AF%E4%BB%A5%E5%8E%8B%E7%BC%A9%E6%96%87%E4%BB%B6%E5%90%97%EF%BC%9F.png)
Web 服务器通常会使用 brotli 或 gzip 预压缩文件。而且这样做不会改变文件的扩展名。在典型的桌面环境(例如 Windows 10)中有没有办法做到这一点?
例如,我可以使用 deflate 压缩 example.txt 而不将其压缩为 example.gz 或 example.zip,而是保留 example.txt 吗?如果不能,为什么可以在 Web 服务器上执行此操作,却不能在桌面上执行此操作?
答案1
Windows NTFS 具有内置的透明文件压缩功能,其工作方式如您想象的那样。
本质上,数据在发送到磁盘之前被压缩,并在应用程序读取时透明地解压缩。
您可以在以下网址阅读更多内容HowToGeek您可以通过以下方式访问该功能
- 右键单击文件或文件夹,
- 转到底部的“属性”项
- 在弹出的窗口中点击“高级”按钮
- 勾选“压缩内容以节省磁盘空间”框,然后单击“确定”
- 在属性窗口中单击“应用”或“确定”
然后 Windows 将压缩您的文件。
您的文件将被压缩(在磁盘上),但对于任何使用它们的应用程序来说,它们看起来好像没有被压缩。
答案2
是的,但是这种压缩必须:
支持的文件类型及解释软件:
这样做的好处是不依赖于文件系统,这意味着无论使用什么文件系统,压缩都会保留,并且在传输过程中无法被删除。
然而,这种方法的缺点是需要手动应用于每个文件,而不是由文件系统自动应用,并且与文件系统压缩方法结合使用时会导致严重的速度缓慢。
得到文件系统的支持:
这样做的好处是不需要解释软件具备所使用的特定压缩方法的解码能力。
但是,我不知道有哪个文件系统支持足够多样化且特定于文件的压缩方法,从而为支持它的每种不同文件类型提供有用的压缩。因此,最好将其用作综合备份解决方案,而不是首选方案,尤其是对于大型文件而言。
例如,尽管(每https://btrfs.readthedocs.io/en/latest/Compression.html)BTRFS 支持
- LZO,
- ZLIB,以及
- 中山大学标准技术研究所
这些压缩方法对文件都无用.TIFF
。相反,根据我的经验,放气得到最佳利用。这意味着我不应该依赖文件系统。