Linuxシステムでtarコマンドを使用してファイルを圧縮および解凍するチュートリアル
tar(テープアーカイブ)コマンドは、linuxシステムでアーカイブファイルにファイルを格納するためによく使用されるコマンドです。
一般的なファイル拡張子は次のとおりです。tar.gzと.tar.bz 2は、gzipまたはbzipアルゴリズムによりさらに圧縮されたことをそれぞれ示す。
tarコマンドの使用tarコマンドは、ほとんどのlinuxシステムのデフォルトで使用可能なので、ソフトウェアを個別にインストールする必要はありません。
tarコマンドには、gzipとbzipの2つの圧縮フォーマットがあり、このコマンドの「z」オプションはgzipを指定し、「j」オプションはbzipを指定します。非圧縮アーカイブも作成できます。
1.tar.を解凍するgzアーカイブ一般的に一般的な使い方は、アーカイブファイルを解凍することです。次のコマンドは、tarからファイルを取り出します。gzアーカイブファイルから解凍します。
コードのコピーここではこれらのパラメータを簡単に説明します。
これらは覚えておくべき重要なオプションです。
tar.を解凍するbz 2/bzipアーカイブ
bz 2拡張子を持つファイルはbzipアルゴリズムを使用して圧縮されますが、tarコマンドでも処理できますが、「z」オプションを「j」オプションで置き換える必要があります。
コードのコピーファイルを指定したディレクトリに解凍するには、「-C」オプションを使用してパスを指定します。ここで「C」は大文字「C」です。
コードのコピー1つのアーカイブから1つのファイルを抽出するには、ファイル名をコマンドの後ろに配置するだけです。
コードのコピー上記コマンドでは、以下のように複数のファイルを指定できます。
コードのコピーワイルドカードは、拡張子として「.txt」を使用するすべてのファイルなど、特定のワイルドカードに一致するファイルのバッチを解凍するために使用できます。
コードのコピーtarアーカイブファイルの内容を解凍するのではなく、リストしたい場合は、「-t」(test)オプションを使用して、gzipで圧縮したtarアーカイブファイルの内容を印刷します。
コードのコピー./new/
./new/cde.txt
./new/subdir/
./new/subdir/in.txt出力は、パイプラインを介してgrepに指向してファイルを検索するか、lessコマンドに指向してコンテンツリストを参照できます。「v」冗長オプションを使用すると、各ファイルの追加詳細が印刷されます。
tarに対してbz 2/bzipファイルは、「j」オプションを使用する必要があります。
上記のコマンドとgrepコマンドを組み合わせて、以下に示すようにアーカイブファイルを取得します。簡単でしょう。$ tar -tvz -f abc.tar.gz | grep abc.txt
-rw-rw-r-- enlightened/enlightened 0 2015-01-13 11:40 ./new/abc.txt
6.tar/tarを作成する.gzアーカイブファイル次のコマンドは、ディレクトリを使用してtarアーカイブファイルを作成します。ディレクトリ内のすべてのファイルとサブディレクトリがアーカイブファイルに追加されます。
コードのコピー$ tar -cvf abc.tar ./new/
./new/
./new/cde.txt圧縮を使用するには、gzipまたはbzip圧縮アルゴリズムは、「z」または「j」オプションをそれぞれ使用します。
コードのコピーファイルの拡張子は実際にはあまり影響しません。「tar.gz」および「tgz」は、gzip圧縮アルゴリズム圧縮ファイルの一般的な拡張子です。「tar.bz 2」および「tbz」は、bzip圧縮アルゴリズム圧縮ファイルの一般的な拡張子です(LCTT訳注:アーカイブが圧縮されているかどうか、およびどの圧縮方式を採用しているかは、その拡張子に依存せず、拡張子は認識を容易にするためだけです)。
7.ファイルを追加する前に確認する1つの有用なオプションは「w」であり、tarコマンドが各ファイルをアーカイブファイルに追加する前にユーザーに確認させることができる場合があります。
このオプションを使用すると、ユーザーがyを入力したときのファイルのみがアーカイブファイルに追加され、何も入力しない場合はデフォルトでnを表します。$ tar -czw -f abc.tar.gz ./new/*
add ‘./new/abc.txt’?yadd ‘./new/newfile.txt’?n
add ‘./new/subdir’?yadd ‘./new/subdir/in.txt’?n
#追加されたすべてのファイルをリストします./new/abc.txt
./new/cde.txt