このブログはURLが変更になりました

新しいブログはこちら→ https://matsuu.hatenablog.com/

tar.gzファイルの解凍時に-z(--gzip)は省略可能

先日、とあるtar.gzファイル解凍する際に、

$ tar zxf hoge.tar.gz

とするところを間違えて、

$ tar xf hoge.tar.gz

と-z(--gzip)をつけ忘れて実行してしまったのだが、あっさり解凍できてしまった。
ちなみに、tar.bz2も-j(--bzip2)をつけずに解凍できた。

調査したところ、どうもGNU tarのバージョン1.14.91で圧縮形式を自動検知する機能が備わったらしい。へぇ知らなかった。

軽く調べた各ディストリビューション対応状況はこんなところか。

  • Gentooは1.19が最新版なので対応。
  • CentOSは5以降で対応(4は非対応)。
  • Debianetchで対応(sargeは非対応)。

おそらくGNU tarの独自機能なので非GNU系tarでは非対応だと思う。多分ね。

追記:.tar.Zファイルも-Z(--compress)を省略できます。