ここで圧縮レベルを設定するには?
nice -n 19 tar -czf $out $in
答え1
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
コンプレッサーが明示的に設定されている場合は、このオプションを使用しないでください。
GNUのマニュアルでは、圧縮されたアーカイブを解凍するためにこれらのオプションを使用する場合、使用されるプログラムは解凍オプションをサポートするtar
必要があると述べています。-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
tar