gpt4 book ai didi

linux - 如何在 Linux 中从文件创建裸压缩流?

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:23:12 26 4
gpt4 key购买 nike

因此,我所知道的所有工具都将通过 deflate 算法压缩的流以某种文件格式放置,其中包含标题、文件名、附加校验和等。

是否可以使用一些标准 Linux 工具 + bash 直接创建仅包含 deflate 压缩流的文件,如 RFC-1951 中所述?

最佳答案

我见过一些开发工具可以做到这一点,但使用普通工具不可能(立即)做到这一点,因为原始压缩流通常没有用。

否则,在 Linux 上,gzip --no-name 会生成带有 10 字节固定大小 header 的压缩流。您可以使用 dd 对其进行修剪。例如:

cat something | gzip --no-name | \
( dd of=/dev/null bs=1 count=10; cat > gzip-without-header )

剩下的就是从输出文件中去除最后 8 个字节(CRC,未压缩大小):

dd if=gzip-without-header of=gzip-without-anything \
bs=1 count=$[ `stat -c '%s' gzip-without-header` - 8 ]

附言GZip 文件格式在 RFC1952 中定义.

关于linux - 如何在 Linux 中从文件创建裸压缩流?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27066133/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com