tar.gzファイルを解凍する方法
オープンソースソフトウェアを使用している場合、ある時点で.tarファイルに遭遇する可能性があります。オープンソースのtarアーカイブユーティリティは1979年から存在しています。 、したがって、POSIXの世界では本当にユビキタスです。その目的は単純です。1つ以上のファイルを取得し、テープアーカイブと呼ばれる自己完結型のファイルに「ラップ」します。tarが発明されたとき、データを配置するために使用されていたためです。ストレージテープ。
tar形式を初めて使用する人は、通常、.zipファイルと同じですが、tarアーカイブは特に圧縮されていません。tar形式はファイルのコンテナを作成するだけですが、ファイルは圧縮できます。 .tarファイルに適用される一般的な圧縮はGzip、bzip2、およびxzです。そのため、.tarファイルだけが表示されることはめったになく、.tar.gzまたは.tgzファイルに遭遇することがよくあります。
tarのインストール
Linux、BSD、Illumos、さらにはMac OSでは、tarコマンドはすでにインストールされています。
Windowsでは、.tarファイルを処理する最も簡単な方法です。インスタすることですLGPLオープンソースの7-Zipユーティリティ。その名前は、「zipユーティリティですが、tarアーカイブでも機能し、cmdコマンドラインインターフェイスのコマンドも提供します。
Windowsで実際のtarユーティリティが本当に必要な場合、GNUtarはWindows10のWSLまたはCygwinからインストールできます。
tarballの作成
tarアーカイブは、tarballと呼ばれることがよくあります。これは、ハッカーが単語を数音節に短縮するのが好きだからです。可能な限り、「tarball」は「tararchive」よりも短く簡単です。
GUIでは、tarballの作成は最大で3ステップのプロセスです。私はKDEを使用していますが、プロセスは基本的にGnomeまたはXFCEで同じです:
- ディレクトリを作成する
- ファイルをディレクトリに配置する
- ディレクトリを右クリックします[圧縮]を選択します
compress.jpg
tarballの作成
シェルでは、基本的に同じですプロセス。
grを収集するにはファイルを1つのアーカイブにまとめ、ファイルをディレクトリに配置してからtarを呼び出し、作成するアーカイブとアーカイブするディレクトリの名前を指定します。
tarユーティリティは、短いオプションの前にダッシュを必要としないため、コマンド間で一意であり、パワーユーザーは次のような複雑なコマンドを省略できます。
ファイルをアーカイブする前にディレクトリにファイルを配置する必要はありませんが、ディレクトリをアーカイブ解除するときに50個のファイルをデスクトップに分散させたくないので、そうしないのは悪いエチケットと見なされます。これらの種類のアーカイブは、常に否定的な意味合いを持つとは限りませんが、ターボムと呼ばれることもあります。 Tarbombは、パッチやソフトウェアインストーラーに役立ちます。いつ使用するか、いつ回避するかを知っているだけです。
アーカイブの圧縮
tarアーカイブを作成しても、ファイルは圧縮されません。ファイルが簡単になります。 1つのblobとして移動します。圧縮の場合、tarでGzipまたはbzipを呼び出すことができます。
$ tar --create --bzip2 --file foo.tar.bz2 myfiles
$ tar --create --gzip --file foo.tar.gz myfiles
一般的な拡張子は、Gzipされたtarのtar.gzと.tgzです。ファイル、およびbzipされたtarファイルの場合は.tbzと.tar.bz2。
アーカイブの抽出
友人またはソフトウェアプロジェクトからtarballを受け取った場合は、抽出できます。 GUIデスクトップまたはシェルのいずれかで。 GUIで、抽出するアーカイブを右クリックし、[抽出]を選択します。
extract_0.jpg
アーカイブの抽出
Dolphinファイルマネージャーは、アーカイブから抽出されたファイルがディレクトリに含まれているかどうか、またはそれらのために新しいディレクトリを作成する必要があるかどうかを自動検出する機能を提供します。このオプションを使用して、tarbombからファイルを抽出するときに、ファイルが整理されて含まれているようにします。
シェルでは、アーカイブを抽出するコマンドは非常に直感的です。
パワーユーザーはこれを次のように短縮します:
tarユーティリティを使用して.zipファイルを解凍することもできます:
高度なtar
tarユーティリティは非常に堅牢で柔軟性があります。 「基本に慣れたら、他の機能を調べると便利です。
既存のtarballにファイルまたはディレクトリを追加します
既存のtarballがあり、新しいファイルを追加します。新しいファイルを追加するためだけにすべてをアーカイブ解除する必要はありません。
ほとんどのLinuxおよびBSDデスクトップには、グラフィカルアーカイブユーティリティが付属しています。これを使用して、tarアーカイブを開くことができます。他のディレクトリと同じように、内部を確認し、個々のファイルを抽出してファイルを追加し、そこに含まれるテキストファイルと画像をプレビューします。
ark。jpg
Arkアーカイブユーティリティ
シェルでは、圧縮されていない限り、ファイルまたはディレクトリをtarアーカイブに追加できます。アーカイブが圧縮されている場合は、解凍する必要がありますが、解凍する必要はありません。
たとえば、アーカイブがGzipで圧縮されている場合:
$ gunzip archive.tar.gz
$ ls
archive.tar
非圧縮のtarアーカイブができたので、ファイルとディレクトリを追加します。
$ tar --append --file archive.tar foo.txt
$ tar --append --file archive.tar bar/
短いバージョン:
$ tar rf archive.tar foo.txt
$ tar rf archive.tar bar/
tarball内のファイルのリストを表示する
圧縮または非圧縮のアーカイブ内のファイルを表示するには、-を使用します。リストオプション:
$ tar --list --file archive.tar.gz
myfiles/
myfiles/one
myfiles/two
myfiles/three
bar/
bar/four
foo.txt
パワーユーザーはこれを次のように短縮します:
1つだけ抽出しますファイルまたはディレクトリ
アーカイブ内のすべてのファイルが必要なわけではなく、1つまたは2つを抽出したい場合があります。tarアーカイブの内容を一覧表示した後、通常のtar抽出コマンドを抽出するファイルのパス:
$ tar xvf archive.tar.gz bar/four
bar/four
複数のファイルまたはディレクトリの抽出は基本的に同じです:
$ tar xvf archive.tar.gz myfiles/one bar/four
myfiles/one
bar/four
ワイルドカードを使用することもできます:
$ tar xvf archive.tar.gz --wildcards "*.txt"
foo.txt
別のディレクトリにtarballを抽出します
以前、一部のtarballは残されたtarbombであると述べましたコンピュータの周りに散らばっているファイル。 tarアーカイブを一覧表示し、そのファイルがディレクトリに含まれていないことがわかった場合は、それらの宛先ディレクトリを作成できます。
$ tar --list --file archive.tar.gz
foo
bar
baz
$ mkdir newfiles
$ tar xvf archive.tar.gz -C newfiles
これにより、アーカイブ内のファイルを「newfiles」ディレクトリにきちんと配置します。
宛先ディレクトリオプションは、抽出したファイルを整理するだけでなく、たとえば、にコピーすることを目的としたファイルを配布する場合にも役立ちます。既存のディレクトリ構造。ウェブサイトで作業していて、管理者に新しいファイルを送信したい場合は、いくつかの異なる方法で行うことができます。明らかな方法は、各ファイルの場所を説明するテキストとともにファイルをサイト管理者に電子メールで送信することです。配置:「添付されたindex.phpファイルは/var/www/example.com/storeに入れられ、vouchers.phpファイルは/var/www/example.com/dealsに入れられます…」
より効率的な方法は、tarアーカイブを作成することです。
この構造が与えられた場合、サイト管理者は受信アーカイブをサーバーのルートディレクトリに直接抽出できます。 tarユーティリティは、/ var / www / example.comの存在と、サブディレクトリの保存、取引、画像を自動検出し、ファイルを適切なディレクトリに配布します。一括コピーと貼り付けがすばやく簡単に実行できます。
GNUtarとBSDtar
tar形式は単なる形式であり、オープン形式なので、複数のツールで作成できます。
2つの一般的なtarユーティリティがあります。LinuxシステムにデフォルトでインストールされるGNUtarユーティリティと、BSD、MacOSにデフォルトでインストールされるBSDtarユーティリティです。 、および一部のLinuxシステム。一般的な使用では、どちらのtarでもかまいません。この記事のすべての例は、たとえば、GNUまたはBSDtarのどちらでも同じように機能します。ただし、2つのユーティリティには若干の違いがあるため、一方に慣れたら、もう一方を試してみてください。
おそらく「その他」のtarをインストールする必要があります(どのようなものでも)ユーティリティ間の混乱を避けるために、GNU tarはgtarと呼ばれ、BSD tarはbsdtarと呼ばれ、コマンドtarはコンピュータにプリインストールされているものへのシンボリックリンクまたはエイリアスです。