.txzおよび.tarで圧縮されたファイルを1つのコマンドで解凍する


13

* .txzで圧縮されたファイルがあります。解凍後、*。tarファイルを受け取りました。1つのコマンドで2回解凍する方法はありますか?つまり、1つのコマンドでファイル(* .tar).txzを解凍しますか?

知っているために私はこのようにしています:

xz -d file.txz
tar xvf file.tar

でももっといい方法があるのか​​な。

回答:


18
xz -d < file.tar.xz | tar xvf -

これは、他の圧縮アーカイブと同じです。元のファイルの非圧縮コピーを作成する必要ありませ

tar最近のバージョンのGNUのような一部の実装tarにはxz、自分で呼び出す組み込みオプションがあります。

GNU tarまたはbsdtar

tar Jxvf file.tar.xz

ただし、を含むバージョン-Jがある場合は、xzファイルが自動的に検出される可能性があるため、次のようにします。

tar xvf file.tar.xz

十分であろう。

GNUまたはBSD tarが古すぎてxz具体的にサポートできない場合は、次の--use-compress-programオプションを使用できる場合があります。

tar --use-compress-program=xz -xvf file.tar.gz

tar圧縮ユーティリティを起動する利点の1つは、終了ステータスでの失敗を報告できることです。

注:場合はtar.xz、アーカイブが使用して作成されたpixzpixz追加したことがありtar、全体のアーカイブを解凍することなく、個別のファイルを抽出することを可能にする、それにインデックスを:

pixz -x path/to/file/in/archive < file.tar.xz | tar xvf -

私はこれを使わなければなりません:tar --use-compress-program = xz -xvf file.tar.gzありがとう!
パヴェルJaworowski


4

解凍はおそらく正しい用語ではありません。あなたはでき解凍してxzおよびuntarしtar

GNUのマニュアルページtarman tarDebianでは、GNU tarがデフォルト)は、以下を使用できることを指定しています。

-I, --use-compress-program PROG
      filter through PROG (must accept -d)

オプションをxzサポートしている-dため、以下を使用できます。

tar --use-compress-program xz xvf file.txz 

何はるかに少ないクリアなmanページからではということである-xz-Jのための短縮形です--use-compress-program xz-I xz

そして、マニュアルページでまったく指定されていないことは、あなたがただ行うことができるということです

tar xvf file.txz 

GNU tarでは、tarファイルがで圧縮されていると認識されますxz

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.