我想估计文件,文件或文件目录压缩后的最终大小。我正在寻找一个可以估算/计算这个的程序或脚本。
有什么想法吗?
必须可以在命令行上访问此类工具(适用于Linux / Mac)。如果它适用于所有或大多数常用的无损压缩算法(gz
,bzip2
,zip
,等,那将是最有用的。 。如果它列出了各种方法的压缩比(或等效使用,结果文件大小),则奖励积分。我完全相信这样的工具会在产生输出之前扫描文件,但是如果可能的话我想避免任何实际的压缩。
如果重要,我宁愿这是通用目的:
以下BASH脚本执行我想要的一种类压缩算法,但它不计算(我喜欢估计):
#!/bin/bash
FILES_TO_COMPRESS=`ls ./*txt`
TEMP_FILE=myData.tgz
tar -zcvf $TEMP_FILE $FILES_TO_COMPRESS
du -h $TEMP_FILE | awk '{print $1}'
rm -f $TEMP_FILE
我主要将它用于较大的文件(大于千兆字节),这就是为什么我只需要估算而不是实际压缩。
答案 0 :(得分:1)
您可以压缩到像| wc
这样的管道(您可以使用pipe(7) - s或fifo(7) - s,也许使用bash coprocesses),但您仍然需要压缩
(除非你对磁盘空间非常紧张,否则我认为这不值得痛苦)
请注意,并非每个文件都是真正可压缩的。