TARGZ ファイルを抽出する

無制限の ジョブ。ファイルサイズは最大 2.5GB。永久に無料。

プライベートで安全

すべてがブラウザで行われます。あなたのファイルが私たちのサーバーに触れることはありません。

超高速

アップロードも待つ必要もありません。ファイルをドロップした瞬間に変換します。

本当に無料

アカウントは必要ありません。隠れたコストもありません。ファイルサイズのトリックもありません。

TARGZ フォーマットとは何ですか?

TAR GZ

tar.gzアーカイブ形式は、tarballまたはgzip圧縮tarアーカイブとしても知られ、ファイルをパッケージ化して圧縮し、便利な保存と転送のために単一のファイルにまとめるために一般的に使用されるファイル形式です。ファイルとディレクトリをバンドルするためのtar(テープアーカイブ)形式と、全体的なファイルサイズを削減するためのgzip圧縮を組み合わせています。tar.gz形式はUnix系オペレーティングシステムで広く使用されており、さまざまなアーカイブツールとユーティリティでサポートされています。

tar形式自体は、ファイルとディレクトリのレコードの連結です。各レコードには、ファイルまたはディレクトリに関するメタデータ(名前、サイズ、権限、所有権、変更タイムスタンプなど)が含まれています。実際のファイルデータは、アーカイブ内のメタデータの後に格納されます。tarアーカイブは、ディレクトリ構造、シンボリックリンク、およびその他の特殊なファイルタイプを保持できます。

tarアーカイブを作成するには、tarユーティリティを使用します。指定されたディレクトリまたはファイルリストを再帰的に走査し、すべてのファイルとディレクトリを含む単一のtarファイルを作成します。生成されたtarファイルには.tar拡張子が付けられます。tarコマンドは、出力ファイル名の指定、特定のファイルまたはディレクトリの除外、権限と所有権の保持、シンボリックリンクの処理など、アーカイブ作成プロセスを制御するためのさまざまなオプションをサポートしています。

tar形式はファイルをまとめるのに便利ですが、それ自体では圧縮を提供しません。ここでgzipの出番です。gzipは、Lempel-Zivコーディング(LZ77)を使用してデータを効率的に圧縮する、一般的な圧縮アルゴリズムです。入力データを分析し、繰り返しのシーケンスを以前の出現への参照に置き換えて、データの全体的なサイズを削減します。

tar.gzアーカイブを作成するには、tarユーティリティとgzipユーティリティを組み合わせて使用します。まず、tarユーティリティは前述のようにtarアーカイブを作成します。次に、生成されたtarファイルはgzipユーティリティにパイプされ、gzipアルゴリズムを使用してtarファイルを圧縮します。圧縮された出力には通常.gz拡張子が付けられ、.tar.gzファイルになります。

gzipの圧縮レベルは、コマンドラインオプションを使用して調整できます。デフォルトでは、gzipは圧縮率と速度のバランスがとれた圧縮レベル6を使用します。より高い圧縮レベル(最大9)はより小さなファイルサイズをもたらす可能性がありますが、圧縮に時間がかかる場合があります。より低い圧縮レベル(1まで)は、圧縮率よりも速度を優先します。

tar.gzアーカイブからファイルを抽出するには、プロセスが逆になります。アーカイブは最初にgzipユーティリティを使用して解凍され、元のtarファイルを復元します。次に、tarユーティリティを使用して、tarアーカイブからファイルとディレクトリを抽出します。tarコマンドは、抽出場所の指定、権限と所有権の保持、シンボリックリンクの処理のためのオプションをサポートしています。

tar.gz形式の利点の1つは、異なるプラットフォーム間での互換性です。tarとgzipユーティリティはUnix系システムで広く利用可能であり、他の多くのオペレーティングシステムはtar.gzファイルを処理するためのツールを提供しています。これにより、基盤となるアーキテクチャやオペレーティングシステムに関係なく、1つのシステムでアーカイブを作成し、別のシステムで抽出することが容易になります。

コマンドラインユーティリティに加えて、さまざまなグラフィカルツールとファイル圧縮プログラムがtar.gz形式をサポートしています。これらのツールは、tar.gzアーカイブの作成、抽出、管理のためのユーザーフレンドリーなインターフェイスを備えていることが多く、グラフィカルインターフェイスを好むユーザーがアクセスできます。

tar.gz形式にはいくつかの制限と考慮事項があります。アーカイブされたファイルに対する組み込みの暗号化やパスワード保護は提供されません。セキュリティが懸念される場合は、tar.gzと組み合わせて追加の暗号化技術またはツールを使用する必要があります。さらに、gzipによって達成される圧縮率は、圧縮されるデータの種類によって異なる場合があります。テキストベースのファイルと繰り返しパターンのファイルはよく圧縮されますが、すでに圧縮されたファイル(画像、ビデオなど)はgzipのさらなる圧縮から大きなメリットを得られない場合があります。

これらの制限にもかかわらず、tar.gz形式は、ファイルのパッケージ化と圧縮におけるそのシンプルさ、互換性、効果性のために広く使用されています。ソースコード、ソフトウェアパッケージ、バックアップアーカイブの配布、およびネットワークまたはストレージメディアを介した大量のファイルのコレクションの転送によく使用されます。

要約すると、tar.gzアーカイブ形式は、ファイルとディレクトリをバンドルするためのtar形式とgzip圧縮を組み合わせて、圧縮されたアーカイブファイルを作成します。異なるシステム間で互換性を維持しながら、ファイルを保存と転送のためにパッケージ化して圧縮するための便利で効率的な方法を提供します。tar.gz形式とその関連ツールを理解することは、さまざまなコンピューティング環境でファイルを管理および配布するために貴重です。

ファイル圧縮は冗長性を減らすことで、同じ情報がより少ないビットで済むようにします。どこまで圧縮できるかの上限は情報理論によって定められています。可逆圧縮の場合、その限界はソースのエントロピーです(シャノンの ソース符号化定理 と彼の1948年の独創的な論文 「通信の数学的理論」を参照)。非可逆圧縮の場合、レートと品質のトレードオフは レート歪み理論によって捉えられます。

2つの柱:モデリングとコーディング

ほとんどの圧縮プログラムには2つの段階があります。まず、モデルがデータ内の構造を予測または公開します。 次に、コーダーがそれらの予測をほぼ最適なビットパターンに変換します。古典的なモデリング ファミリーはレンペル–ジブです。 LZ77 (1977) とLZ78 (1978)は、繰り返される部分文字列を検出し、生のバイトの代わりに参照を出力します。 コーディング側では、 ハフマン符号化 (元の論文 1952を参照)は、より可能性の高いシンボルに短いコードを割り当てます。 算術符号化 範囲符号化 は、エントロピー限界に近づけるためのよりきめ細かい代替手段であり、現代の 非対称数系(ANS) は、高速なテーブル駆動の実装で同様の圧縮を実現します。

一般的なフォーマットが実際に何をしているか

DEFLATEgzipzlibZIPで使用)は、LZ77とハフマン符号化を組み合わせたものです。その仕様は公開されています: DEFLATE RFC 1951、zlibラッパー RFC 1950、およびgzipファイル形式 RFC 1952。Gzipはストリーミング用にフレーム化されており、明示的に ランダムアクセスを提供しようとはしません。PNG画像は、PNG仕様書によれば、DEFLATEを唯一の圧縮方法として標準化しています(最大32 KiBのウィンドウ)。 「圧縮方法0… deflate/inflate… 最大32768バイト」 および W3C/ISO PNG第2版

Zstandard (zstd): 非常に高速な 解凍で高い圧縮率を実現するために設計された、新しい汎用圧縮プログラムです。この形式は RFC 8878 HTMLミラーも参照)および参照仕様書 GitHubで文書化されています。gzipと同様に、基本フレームは ランダムアクセスを目的としていません。zstdのスーパーパワーの1つは辞書です。コーパスからの小さなサンプルで、多数の小さなファイルや類似のファイルで 圧縮を劇的に改善します( python-zstandard辞書ドキュメント および Nigel Taoの実例を参照)。実装は、「非構造化」と「構造化」の両方の辞書を受け入れます (ディスカッション)

Brotli: ウェブコンテンツ(例:WOFF2フォント、HTTP)に最適化されています。静的辞書と DEFLATEのようなLZ+エントロピーコアを組み合わせます。仕様は RFC 7932で、2WBITS−16のスライディングウィンドウ(WBITSは[10, 24]、1 KiB−16 Bから 16 MiB−16 Bまで)と、 ランダムアクセスを試みないことも記されています。Brotliは、ウェブテキストでgzipをしばしば上回り、高速にデコードします。

ZIPコンテナ: ZIPは、さまざまな圧縮方法 (deflate、store、zstdなど)でエントリを保存できるファイルアーカイブです。事実上の標準はPKWAREのAPPNOTEです( APPNOTEポータル ホストされているコピー、およびLCの概要 ZIPファイル形式(PKWARE) / ZIP 6.3.3を参照)。

速度と圧縮率:フォーマットの位置づけ

LZ4は、控えめな圧縮率で生の速度を目標としています。その プロジェクトページ (「非常に高速な圧縮」)と フレーム形式を参照してください。メモリ内キャッシュ、テレメトリ、または解凍がRAM速度に近い必要があるホットパスに最適です。

XZ / LZMAは、比較的遅い圧縮で密度(優れた圧縮率)を追求します。XZはコンテナです。 重労働は通常、LZMA/LZMA2(LZ77のようなモデリング+範囲符号化)によって行われます。 .xzファイル形式 LZMA仕様(Pavlov)、およびLinuxカーネルのメモ XZ Embeddedについてを参照してください。XZは通常、gzipを上回り、高圧縮率の最新コーデックとしばしば競合しますが、エンコード時間は遅くなります。

bzip2は、 Burrows–Wheeler変換(BWT)、move-to-front、RLE、およびハフマン符号化を適用します。通常、gzipよりも小さいですが遅いです。 公式マニュアル およびmanページ (Linux)を参照してください。

ウィンドウ、ブロック、ランダムアクセス

「ウィンドウサイズ」は重要です。DEFLATE参照は32 KiBしか遡れません RFC 1951 およびPNGの32 KiBキャップ ここに記載)。Brotliのウィンドウは、約1 KiBから16 MiBの範囲です (RFC 7932)。Zstdは、レベルごとにウィンドウと検索深度を調整します (RFC 8878)。基本的なgzip/zstd/brotliストリームは、シーケンシャルデコード用に設計されています。基本形式は ランダムアクセスを約束しませんが、コンテナ(例:tarインデックス、チャンク化されたフレーミング、または形式固有のインデックス)でそれを階層化できます。

可逆対非可逆

上記の形式は可逆です。正確なバイトを再構築できます。メディアコーデックはしばしば非可逆です。 より低いビットレートを達成するために、知覚できない詳細を破棄します。画像では、古典的なJPEG(DCT、量子化、エントロピー 符号化)は ITU-T T.81 / ISO/IEC 10918-1で標準化されています。音声では、MP3(MPEG-1 Layer III)とAAC(MPEG-2/4)は、知覚モデルとMDCT変換に依存しています( ISO/IEC 11172-3 ISO/IEC 13818-7、およびMDCTの概要 こちらを参照)。非可逆と可逆は共存できます(例:UIアセット用のPNG、画像/動画/音声用のWebコーデック)。

実践的なヒント

  • 仕事に合わせて選ぶ。 ウェブテキストとフォント: brotli。一般的なファイルとバックアップ: zstd (優れた解凍速度と、時間と圧縮率を交換するレベル)。超高速パイプとテレメトリ: lz4。エンコード時間が問題にならない長期アーカイブの最大密度: xz/LZMA
  • 小さなファイル? zstd (ドキュメント) / (例)で辞書をトレーニングして配布します。何十もの小さな類似オブジェクトを劇的に縮小できます。
  • 相互運用性。 複数のファイルを交換する場合は、コンテナ(ZIP、tar)と 圧縮プログラムを優先します。ZIPのAPPNOTEは、メソッドIDと機能を定義しています。 PKWARE APPNOTE およびLCの概要 こちらを参照してください。
  • データで測定する。 圧縮率と速度はコーパスによって異なります。多くのリポジトリがベンチマークを公開しています(例: LZ4のREADMEはSilesiaコーパスを こちらで引用しています)が、常にローカルで検証してください。

主要な参考文献(詳細)

理論: シャノン 1948 · レート歪み · 符号化: ハフマン 1952 · 算術符号化 · 範囲符号化 · ANS. フォーマット: DEFLATE · zlib · gzip · Zstandard · Brotli · LZ4フレーム · XZ形式. BWTスタック: Burrows–Wheeler (1994) · bzip2マニュアル. メディア: JPEG T.81 · MP3 ISO/IEC 11172-3 · AAC ISO/IEC 13818-7 · MDCT.

結論:データと制約に合った圧縮プログラムを選択し、実際の入力で測定し、 辞書とスマートフレーミングによる利点を忘れないでください。適切な組み合わせで、 より小さなファイル、より速い転送、より軽快なアプリを手に入れることができます—正確さや移植性を犠牲にすることなく。

よくある質問

ファイルの圧縮とは何ですか?

ファイルの圧縮は、ファイルやファイルのサイズを減らすプロセスで、通常はストレージスペースを節約したり、ネットワークを介した伝送を高速化するために使用されます。

ファイルの圧縮はどのように機能しますか?

ファイルの圧縮は、データの冗長性を識別して削除することで機能します。それはアルゴリズムを使用して、元のデータをより小さいスペースでエンコードします。

ファイルの圧縮の種類は何ですか?

ファイルの圧縮の主要な2つのタイプはロスレス圧縮とロッシー圧縮です。ロスレス圧縮では、元のファイルを完全に復元することができますが、ロッシー圧縮ではデータ品質の若干の損失を伴うより大きなサイズの削減が可能になります。

ファイルの圧縮ツールの例は何ですか?

ファイルの圧縮ツールの人気の例はWinZipで、ZIPとRARを含む複数の圧縮形式をサポートしています。

ファイルの圧縮はファイルの品質に影響しますか?

ロスレス圧縮では品質は変わりません。しかし、ロッシー圧縮では、それほど重要ではないデータを削除してファイルサイズをより大幅に削減するため、品質の低下が目立つことがあります。

ファイルの圧縮は安全ですか?

はい、データの整合性の面では、特にロスレス圧縮ではファイルの圧縮は安全です。しかし、他のファイルと同様に、圧縮ファイルはマルウェアやウイルスの標的になる可能性があるため、常に信頼することができるセキュリティソフトウェアを用意しておくことが重要です。

どの種類のファイルを圧縮できますか?

ほぼすべてのタイプのファイルが圧縮可能であり、テキストファイル、画像、音声、動画、ソフトウェアファイルなどがあります。ただし、圧縮可能なレベルは、ファイルタイプによって大幅に異なることがあります。

ZIPファイルとは何を意味しますか?

ZIPファイルは、1つ以上のファイルのサイズを減らすためにロスレス圧縮を使用するファイル形式の一種です。ZIPファイルの中の複数のファイルは、実質的に1つのファイルにまとめられるため、共有も簡単になります。

すでに圧縮されたファイルを圧縮することはできますか?

技術的にははい、ですが、さらなるサイズ縮小は最小限で、あるいは逆効果となる可能性があります。既に圧縮されたファイルを圧縮すると、圧縮アルゴリズムによって追加されたメタデータにより、そのサイズが増えることがあります。

ファイルを解凍するにはどうすればいいですか?

ファイルを解凍するには、通常、解凍ツールやアンジッパーといったツール、例えばWinZipや7-Zipが必要です。これらのツールは、圧縮形式から元のファイルを抽出することができます。