Aを解凍/抽出するにはどのコマンドが必要ですか。タールgzファイル?

私は巨大なを受け取りました。タール約800mbのイメージファイルを含むクライアントからのgzファイル(圧縮されていない場合。)私たちのホスティング会社のftpは非常に遅いので、すべてのファイルをローカルに抽出し、ftp経由で送信することは実用的ではありません。 私はftpすることができました。タール私たちのホスティングサイトにgzファイルが、私は私のディレクトリにsshとunzipを使用しようとすると、それは私にこのエラーを与えます:

[esthers@clients locations]$ unzip community_images.tar.gzArchive:  community_images.tar.gz  End-of-central-directory signature not found.  Either this file is not a zipfile, or it constitutes one disk of a multi-part archive.  In the latter case the central directory and zipfile comment will be found on the last disk(s) of this archive.note:  community_images.tar.gz may be a plain executable, not an archiveunzip:  cannot find zipfile directory in one of community_images.tar.gz or community_images.tar.gz.zip, and cannot find community_images.tar.gz.ZIP, period.

A内のすべてのファイルを抽出するためにどのコマンドを使用する必要がありますか。タールgzファイル?

タイプ man tar 詳細については、しかし、このコマンドは、トリックを行う必要があります:

tar -xvzf community_images.tar.gz

もう少し詳しく説明すると, tar すべてのファイルを1つのパッケージに収集しました, community_images.tar. Gzipプログラムは圧縮を適用したため、gzipプログラムは圧縮を適用した。 gz 拡張子。 コマンドはいくつかのことを行います:

  • f:これはコマンドの最後のフラグでなければならず、tarはコマンドの最後のフラグでなければならない。 fileはすぐ後にする必要があります。 これはtarに圧縮ファイルの名前とパスを伝えます。
  • z:tarにgを使用してアーカイブを解凍するように指示しますからip
  • x:tarはファイルまたはeを収集することができますxそれらを追跡する。 x 後者を行います。
  • v:タールは多くのことを話すことができます。 Verbose出力には、抽出されているすべてのファイルが表示されます。

に抽出するには、 customフォルダを追加し、 -C お好みのフォルダ名を持つオプション:

tar -xvzf community_images.tar.gz -C some_custom_folder_name

ファイルを特定の宛先に抽出する場合は、次のように追加できます -C /destination/path/
この場合は、まずディレクトリを作成してください:~/Pictures/Community

例:

mkdir ~/Pictures/Communitytar xf community_images.tar.gz -C /home/emmys/Pictures/Community/

あなたが言うことを考慮すれば、簡単にそれを暗記することができます タール eへ X トラクトa F

gif of process done at terminal

メモ: Manページ内で検索できることを覚えておいてくださ ?+検索する用語は、その後、 nN あなたが探している用語の次または前のインスタンスに移動します。

ある時点で tar 自動解凍にアップグレードされました。 あなたが今必要とするのは:

tar xf community_images.tar.gz

同じ説明が適用されます:

  • f:これはコマンドの最後のフラグでなければならず、tarはコマンドの最後のフラグでなければならない。 fileはすぐ後にする必要があります。 これはtarに圧縮ファイルの名前とパスを伝えます。
  • x:ザ-xファイルを転送します。

コマンドフラグにハイフンがないことに注意してください。 これは、tarのほとんどのバージョンでgnuとbsdスタイルの両方のオプションが許可されているためです(単純に、gnuにはハイフンが必要ですが、bsdにはありま

のためのすべてのフラグを覚えています tar 退屈なことができます。 必須XKCD:

enter image description here

したがって、私はそれを行うためにPythonで自分の小さなスクリプトを作りました。 クイック、汚れた, cp-使用法のように:

#!/usr/bin/env python3import tarfile,sys,ostf = tarfile.open(name=sys.argv[1],mode='r:gz')where = '.'if len(sys.argv) == 3:    where = sys.argv[2]tf.extractall(path=where)tf.close()

そうそれを使用して下さい:

myuntar.py archive.tar

同様のものも参照してください zipアーカイブを解凍するためのスクリプト.

クイックアンサー:

tar -xvf  <.tar file> or <.tar.xz file>tar -xzvf <.tar.gz file>tar -xjvf <.tar.bz2 file>

[メモ]:

  • -v 処理されたファイルを詳細に一覧表示します。
  • -z Gzipを使用してアーカイブをフィルタリングします。
  • -f アーカイブファイルまたはデバイスアーカイブを使用します。
  • -x アーカイブからファイルを抽出します。
  • -j bzip2.
  • タール -xf アーカイブ。tar#からすべてのファイルを抽出する archive.tar.

抽出できない場合に備えて .tar.gz を使用したファイル

tar -xvzf fileName.tar.gz

を使って抽出してみる

tar xf fileName.tar.gz

あなたも最初のステップでこれを行うことができます:

gunzipコミュニティ_images.タールgz

次に、ファイルがあります:community_images。タール

第二のステップは次のようになります:

tar-xvf community_images.タール

と*。tarファイルが抽出されます。

tar xvfファイル。タールgz

  • 抽出のためのx
  • v verbose(リストファイル)の場合
  • ファイル名のfは次のとおりです

Tarの任意のリモート現代版は、アーカイブがgzipされていることを自動検出し、あなたのために"z"を追加する必要があります。