使用nice和tar设置压缩级别

使用nice和tar设置压缩级别

这里如何设置压缩级别?

nice -n 19 tar -czf $out $in

答案1

nice不会对压缩级别做任何事情。它只会影响内核对进程的调度。下面的所有命令都可以加上前缀,以nice在不同的“nice”级别运行它们,它不会影响压缩级别,只会影响执行操作所需的时间(如果系统负载较重)。

如果您使用的是 GNU ,则可以使用以下选项tar设置压缩程序:-I--use-compress-program

$ tar -I "gzip --best" -c -f archive.tar.gz dir

或者

$ tar --use-compress-program="gzip --best" -c -f archive.tar.gz dir

-z请注意,如果显式设置压缩程序,则不应使用该选项。

GNUtar手册规定,所使用的程序必须支持-d解压缩选项(如果您使用这些选项来解压缩压缩档案),事实gzip确实如此。

据我所知,对于 BSD,tar不可能以类似的方式指定压缩级别。

实现此目的的另一种方法显然是创建一个未压缩的存档,然后按照需要的方式对其进行压缩:

$ tar -c -f archive.tar dir
$ gzip --best archive.tar

或者

$ tar -c dir | gzip --best -o archive.tar.gz

然而其他方法是将环境变量设置GZIP为您想要传递给的标志gzip

$ export GZIP='--best'
$ tar -c -z -f archive.tar.gz dir

除了使用-I和之外--use-compress-program,最后几个替代方案都适用于 GNU 和 BSD tar

相关内容