Linuxでtarコマンドを使用してファイルを圧縮および抽出する方法
Linuxのtarコマンドは、「tarball」とも呼ばれる.tar.gzまたは.tgzアーカイブファイルを作成するためによく使用されます。 。 tarコマンドでも、結果のアーカイブを抽出できます。.
Linuxディストリビューションに含まれているGNU tarコマンドは統合圧縮を持っています。 .tarアーカイブを作成し、それをgzipまたはbzip2圧縮で単一のコマンドで圧縮できます。結果のファイルが.tar.gzファイルまたは.tar.bz2ファイルになるのはそのためです。.
ディレクトリ全体または単一ファイルを圧縮する
次のコマンドを使用して、Linux上のディレクトリ全体または単一のファイルを圧縮します。指定したディレクトリ内の他のすべてのディレクトリも圧縮します。つまり、再帰的に機能します。.
tar -czvfアーカイブ名.tar.gz / path / to / directory-or-file
これらのスイッチが実際に意味するものは次のとおりです。
- -c: Cアーカイブを作成する.
- -z:gでアーカイブを圧縮するzip.
- -v:アーカイブの作成中に端末に進行状況を表示します。v「冗長」モード。これらのコマンドではvは常にオプションですが、役に立ちます。.
- -f:指定できます fアーカイブのilename.
現在のディレクトリに“ stuff”という名前のディレクトリがあり、それをarchive.tar.gzという名前のファイルに保存したいとしましょう。次のコマンドを実行します。
tar -czvf archive.tar.gzもの
あるいは、現在のシステムの/ usr / local / somethingにディレクトリがあり、それをarchive.tar.gzという名前のファイルに圧縮したいとしましょう。次のコマンドを実行します。
tar -czvf archive.tar.gz / usr / local / something
一度に複数のディレクトリまたはファイルを圧縮する
tarは単一のディレクトリを圧縮するために頻繁に使用されますが、複数のディレクトリ、複数の個々のファイル、またはその両方を圧縮するためにも使用できます。単一のファイルやディレクトリの代わりにファイルやディレクトリのリストを提供するだけです。たとえば、/ home / ubuntu / Downloadsディレクトリ、/ usr / local / stuffディレクトリ、および/home/ubuntu/Documents/notes.txtファイルを圧縮するとします。次のコマンドを実行するだけです。
tar -czvf archive.tar.gz / home / ubuntu /ダウンロード/ usr / local / stuff / home /ubuntu / Documentation / notes.txt
バックアップしたいだけのディレクトリまたはファイルをリストするだけです。.
ディレクトリとファイルを除外する
場合によっては、ディレクトリ全体を圧縮したいが、特定のファイルやディレクトリは含めないでください。あなたがすることができます --除外する
除外するディレクトリまたはファイルごとに切り替える.
たとえば、/ home / ubuntuを圧縮したいが、/ home / ubuntu / Downloadsおよび/home/ubuntu/.cacheディレクトリは圧縮したくないとします。これがあなたのやり方です。
tar -czvf archive.tar.gz / home / ubuntu --exclude = / home / ubuntu /ダウンロード--exclude = / home / ubuntu / .cache
の --除外する
スイッチは非常に強力です。ディレクトリやファイルの名前は取りません。実際にはパターンを受け入れます。あなたがそれを使ってできることはもっとたくさんあります。たとえば、次のコマンドでディレクトリ全体をアーカイブし、すべての.mp4ファイルを除外できます。
tar -czvf archive.tar.gz / home / ubuntu --exclude = *。mp4
代わりにbzip2圧縮を使用してください
gzip圧縮は.tar.gzまたは.tgzファイルを作成するために最も頻繁に使用されますが、tarはbzip2圧縮もサポートします。これにより、bzip2で圧縮されたファイル(通常は.tar.bz2、.tar.bz、または.tbzファイル)を作成できます。これを行うには、ここで示すコマンドのgzipの-zをbzip2の-jに置き換えてください。.
Gzipは高速ですが、一般的に圧縮率が少し低くなるため、やや大きいファイルになります。 Bzip2は遅いですが、もう少し圧縮するので、いくらか小さいファイルになります。 Gzipもより一般的で、デフォルトではgzipをサポートしていますが、bzip2はサポートしていません。しかし、一般に、gzipとbzip2は実質的に同じものであり、どちらも同じように動作します。.
たとえば、stuffディレクトリを圧縮するために提供した最初の例の代わりに、次のコマンドを実行します。
tar -cjvf archive.tar.bz2もの
アーカイブを抽出する
アーカイブを作成したら、tarコマンドでそれを解凍できます。次のコマンドは、archive.tar.gzの内容を現在のディレクトリに抽出します。.
tar -xzvf archive.tar.gz
それ以外は上記で使用したアーカイブ作成コマンドと同じです。 -バツ
スイッチは -c
スイッチ。これはあなたがeにしたいことを指定しますバツアーカイブを作成する代わりにアーカイブを作成する.
アーカイブの内容を特定のディレクトリに抽出することができます。あなたがすることができます -C
コマンドの末尾に切り替えます。たとえば、次のコマンドはarchive.tar.gzファイルの内容を/ tmpディレクトリに抽出します。.
tar -xzvf archive.tar.gz -C / tmp
ファイルがbzip2圧縮ファイルの場合は、上記のコマンドの「z」を「j」に置き換えます。.
これがtarコマンドの最も簡単な使用法です。このコマンドには多数の追加オプションが含まれているため、これらすべてをここでリストすることはできません。詳細については。実行します 情報タール tarコマンドの詳細情報ページを表示するには、シェルでcommandを実行してください。を押す q 完了したら情報ページを閉じるためのキー。 tarのマニュアルをオンラインで読むこともできます。.
グラフィカルなLinuxデスクトップを使用している場合は、デスクトップに付属のファイル圧縮ユーティリティまたはファイルマネージャを使用して、.tarファイルを作成または抽出することもできます。 Windowsでは、無料の7-Zipユーティリティを使用して.tarアーカイブを抽出および作成できます。.