logo

Linux でファイルを圧縮する方法 | Tarコマンド

ファイル圧縮は、Linux システム上でデータを効率的に管理および転送するための基本的なタスクです。 Tar コマンドは Tape Archive の略で、圧縮ファイルとアーカイブ ファイルを作成できる強力なツールです。この包括的なガイドでは、Tar コマンドを使用して Linux システム上でファイルを圧縮するさまざまなオプションと例を説明します。

目次



Excelの日付の違い

Linuxでファイルを圧縮するためのtarコマンド

Linux の「tar」はテープ アーカイブを表し、アーカイブの作成とアーカイブ ファイルの抽出に使用されます。 Linux の tar コマンドは、Linux でアーカイブ機能を提供する重要なコマンドの 1 つです。 Linux tar コマンドを使用すると、圧縮または非圧縮のアーカイブ ファイルを作成したり、それらのファイルを保守および変更したりできます。

Linux の tar コマンドの構文

tar [options] [archive-file] [file or directory to be archived]>

ここ 、

  • tar> : コマンド自体。
  • [options]> : の動作を変更するオプションのフラグまたは設定。tar>指示。
  • [archive-file]> : 作成または作業しているアーカイブ ファイルの名前。
  • [file or directory to be archived]> : アーカイブに含めるファイルまたはディレクトリ。

アーカイブ ファイルは、メタデータとともに 1 つ以上のファイルで構成されるファイルです。アーカイブ ファイルは、移植性と保管を容易にするために複数のデータ ファイルを 1 つのファイルにまとめたり、単にファイルを圧縮して使用するストレージ領域を削減したりするために使用されます。



オプション

説明

-c



ファイルとディレクトリをバンドルしてアーカイブを作成します。

-バツ

既存のアーカイブからファイルとディレクトリを抽出します。

-f

作成または抽出するアーカイブのファイル名を指定します。

-t

アーカイブ内に含まれるファイルとディレクトリを表示またはリストします。

-で

新しいファイルまたはディレクトリをアーカイブし、既存のアーカイブに追加します。

-で

詳細な情報を表示し、アーカイブまたは抽出プロセス中に詳細な出力を提供します。

-A

複数のアーカイブ ファイルを 1 つのアーカイブに連結します。

-と

tar ファイルの作成時に gzip 圧縮を使用し、拡張子「.tar.gz」が付いた圧縮アーカイブが作成されます。

-j

tar ファイルの作成時に bzip2 圧縮を使用し、拡張子「.tar.bz2」が付いた圧縮アーカイブが作成されます。

-で

アーカイブ ファイルの整合性を検証し、その内容が破損していないことを確認します。

-r

アーカイブ全体を再作成せずに、既存のアーカイブにファイルまたはディレクトリを更新または追加します。

Linux でファイルを圧縮する tar コマンドの例

1. オプション -cvf を使用して非圧縮 tar アーカイブを作成する

このコマンドは、現在のディレクトリ内のすべての .c ファイルのアーカイブである file.tar という名前の tar ファイルを作成します。

tar cvf file.tar *.c>
  • 「-c」: 新しいアーカイブを作成します。
  • 「-v」: アーカイブ プロセスの進行状況を示す詳細な出力を表示します。
  • 「-f」: アーカイブのファイル名を指定します

出力:

os2.c os3.c os4.c>

2. オプション -xvf を使用してアーカイブからファイルを抽出する

このコマンドはアーカイブからファイルを抽出します。

tar xvf file.tar>
  • 「-x」: アーカイブからファイルを抽出します。
  • 「-v」: 抽出プロセス中に詳細な出力を表示します。
  • 「-f」: アーカイブのファイル名を指定します。

出力:

os2.c os3.c os4.c>

3. オプション -z を使用した tar アーカイブの gzip 圧縮

このコマンドは、.c ファイルのアーカイブである file.tar.gz という tar ファイルを作成します。

tar cvzf file.tar.gz *.c>
  • 「-z」: gzip 圧縮を使用します。
  • 「-j」: bzip2 圧縮を使用します。
  • 「-J」: xz 圧縮を使用します。

4. オプション -xvzf を使用して gzip tar アーカイブ *.tar.gz を抽出します。

このコマンドは、tar アーカイブされた file.tar.gz ファイルからファイルを抽出します。

tar xvzf file.tar.gz>

5. Linux でオプション -j を使用して圧縮 tar アーカイブ ファイルを作成する

このコマンドは、gzip のサイズより小さいアーカイブ ファイルを圧縮して作成します。圧縮と解凍の両方に gzip よりも時間がかかります。

tar cvfj file.tar.tbz example.cpp>

出力:

tar cvfj file.tar.tbz example.cpp example.cpp  tar tvf file.tar.tbz -rwxrwxrwx root/root 94 2017-09-17 02:47 example.cpp>

6. Linux で単一の tar ファイルまたは指定されたディレクトリを解凍します。

このコマンドは、現在のディレクトリまたは -C オプションを使用して指定したディレクトリにあるファイルを解凍します。

tar xvfj file.tar  or  tar xvfj file.tar -C   path of file in directory>

7. Linux で複数の .tar、.tar.gz、.tar.tbz ファイルを解凍します。

このコマンドは、tar、tar.gz、tar.bz2 アーカイブ ファイルから複数のファイルを抽出または untar します。たとえば、上記のコマンドは、アーカイブ ファイルから fileA fileB を抽出します。

tar xvf file.tar 'fileA' 'fileB'  or  tar zxvf file1.tar.gz 'fileA' 'fileB' or  tar jxvf file2.tar.tbz 'fileA' 'fileB'>

8. Linux の既存の tar、tar.gz、tar.tbz ファイルのサイズを確認します。

上記のコマンドは、アーカイブ ファイルのサイズをキロバイト (KB) 単位で表示します。

tar czf file.tar | wc -c or  tar czf file1.tar.gz | wc -c or  tar czf file2.tar.tbz | wc -c>

9. Linux で既存の tar ファイルを更新する

tar rvf file.tar *.c>

出力:

os1.c>

10. 内容をリストし、オプション -tf を使用して tarfile を指定します。

このコマンドは、アーカイブされたファイルのリスト全体を一覧表示します。 tarfile 内の特定のコンテンツをリストすることもできます

tar tf file.tar>

出力:

example.cpp>

11. 「grep コマンド」を使用してパイプを適用して、探しているものを見つけます

このコマンドは、アーカイブされたファイルから grep 内の指定されたテキストまたは画像のみをリストします。

tar tvf file.tar | grep '  text to find  '  or tar tvf file.tar | grep '  filename.file extension  '>

12. ファイル名を引数として渡して、tarfile を検索できます。

このコマンドは、アーカイブされたファイルをその詳細とともに表示します。

tar tvf file.tar filename>

13. オプション -tvf を使用したアーカイブの表示

tar tvf file.tar>

出力:

-rwxrwxrwx root/root 191 2017-09-17 02:20 os2.c -rwxrwxrwx root/root 218 2017-09-17 02:20 os3.c -rwxrwxrwx root/root 493 2017-09-17 02:20 os4.c>

Linux のワイルドカードとは何ですか

「ワイルド文字」または「ワイルドカード文字」とも呼ばれるワイルドカードは、1 つ以上の文字を置換または表すために使用される記号です。ワイルドカードは通常、1 つ以上の文字を表すアスタリスク (*)、または 1 つの文字を表す疑問符 (?) のいずれかです。

Python プログラム

14. .webp'ltr'> で画像を検索するにはこれにより、拡張子が .webp'ltr'> のファイルのみが抽出されます。 注記: 上記のコマンドでは、ファイル名の代わりに * を使用して、その特定のディレクトリに存在するすべてのファイルを取得します。

zipコマンド Linuxでファイルを圧縮するには

Linux ファイル圧縮の分野では、` zip> `> コマンドは強力で使いやすいツールとして登場しました。とは異なります ` tar`> コマンド、` zip`> は、元のコンテンツの整合性を維持しながら圧縮ファイルを作成することを専門としています。 ` の単純な構文 zip`> コマンドは圧縮プロセスを簡素化します。

基本的な構文 :

zip [options] zipfile files/directories>
  • [> options> ]>: のオプションのフラグまたは設定。zip>指示。
  • zipfile> : 作成する ZIP アーカイブの名前。
  • files/directories> : ZIP アーカイブに含めるファイルまたはディレクトリ。
zip ./bigfile.zip bigfile>

この 1 行のコードに ` の本質がカプセル化されています。 zip`> コマンド、ファイルを圧縮します ` bigfile`> そして新しいファイルを生成します、` bigfile.zip`> 、元のコンテンツの圧縮バージョンが保持されます。特に、元のファイルは変更されないため、圧縮プロセス中のデータの安全性が確保されます。

` のユーザーフレンドリーな性質 zip> `>コマンドを使用すると、圧縮アーカイブを作成するための簡単なソリューションを探している人にとって、このオプションが利用しやすいものになります。単一のファイルを圧縮する場合でも、複数のファイルを圧縮する場合でも、` zip`> このコマンドは、Linux ユーザーの間での人気に貢献しています。圧縮ツールキットの多用途ツールとして、` zip`> 使いやすさと効果的なファイル圧縮の間のシームレスなバランスを提供します。

Gzipコマンド Linuxでファイルを圧縮するには

Linux 圧縮ユーティリティの世界では、` gzip> `> コマンドは、簡単で非常に効率的なツールとして際立っています。その使用法は非常にシンプルです。ファイル名を指定し、` gzip`> シームレスにその場で圧縮します。これは 1 つのコマンドで実現できます

基本的な構文:

gzip [options] filename>
  • [options]>: 適用できるオプションのフラグまたは設定。
  • filename>: 圧縮したいファイルの名前。
gzip bigfile>

別の圧縮ファイルを生成する特定の圧縮コマンドとは異なり、` gzip`> その場で動作します。つまり、元のファイルを暗号化し、圧縮バージョンに置き換えます。この本質的なシンプルさは、「」を位置付ける重要な属性です。 gzip`> 迅速かつ効果的なファイル圧縮ソリューションを求めるユーザーにとって、優れた選択肢となります。

インプレース圧縮機能は、複数のファイルを管理する必要性を軽減するだけでなく、さまざまなワークフローへのスムーズな統合を保証します。これにより、` gzip`> シンプルさとスピードが最優先されるシナリオに特に適しています。単一のファイルを圧縮する場合でも、複数のファイルを圧縮する場合でも、` の単純な性質は次のとおりです。 gzip`> コマンドは Linux ユーザーの間での人気に貢献しており、さまざまな状況において信頼性が高く効率的な圧縮ツールとなっています。

Bzip2 指示 Linuxでファイルを圧縮するには

Linux ファイル圧縮の複雑な状況では、` bzip2> `> コマンドは、それ自体が強力で多用途のツールであることを示し、対応するものとの類似点があります。 gzip`> 。 ` と同様の方法で機能します gzip`> 、` bzip2`> コマンドはファイルをその場で圧縮し、元のファイルのみを保存します。そのアプリケーションの単純さは、次の例で示されています。

基本的な構文:

bzip2 [options] filename>

ここで、「 options`> 適用したい追加のフラグや設定を表し、` filename`> は圧縮するファイルの名前です。オプションを指定しない基本コマンドは、ファイルをその場で圧縮し、元のファイルを圧縮バージョンに置き換えます。

bzip2 bigfile>

この簡潔なコマンドは圧縮プロセスを開始し、その結果 ` bigfile.bz2`> - 元のファイルの圧縮された反復。 `間の決定とよく似ています gzip`> そして「」 bzip2`> 多くの場合、特定の使用例に依存するため、これら 2 つのコマンドの選択は微妙であり、圧縮されるデータの性質や必要な圧縮率などの要因に影響されます。

どちらのコマンドもインプレース圧縮の基本概念を共有していますが、` bzip2`> は独特の圧縮アルゴリズムで知られており、多くの場合 ` と比較してより高い圧縮率を達成します。 gzip`> 。したがって、ユーザーは「 bzip2`> ファイル サイズの削減を優先し、ある程度の圧縮速度を犠牲にしても構わない場合。この微妙な意思決定プロセスは、「」の柔軟性を強調します。 bzip2`> Linux エコシステム内のさまざまな圧縮要件に対応するためのコマンドです。

XZコマンド Linuxでファイルを圧縮するには

圧縮シーンでは比較的新しい ` xz> `> コマンドは、その優れた圧縮機能で知られています。大きなファイルの場合は時間がかかる場合がありますが、圧縮結果は注目に値します。

基本的な構文:

xz [options] filename>
  • [options]> : 適用できるオプションのフラグまたは設定。
  • filename> : 圧縮したいファイルの名前。
xz bigfile>

` bigfile.xz`> ファイルの圧縮バージョンを示します。 ` xz`> は大幅な圧縮率を達成できることで人気を博しており、ファイル サイズの削減を優先する人にとっては最優先の選択肢となっています。

結論

この記事は Linux でファイルを小さくすることに関するもので、Tape Archive (Tar) コマンドを使用してクールなトリックをアンロックするようなものです。 Tar がどのようにファイルをバンドルし、gzip、bzip2、xz などを使用して圧縮できるかを学びました。私たちはそこで終わりではなく、zip などの使いやすいツールや、gzip、bzip2、xz などの簡単なコマンドについても話し合いました。これは、物事を非常にシンプルにしたいか、素早く作業したいか、多くのスペースを節約したいか、あるいは印象的なことをしたいかなど、自分にとって最適なものを選択するのに役立ちます。したがって、Linux を使用している場合、このガイドは、ファイルを賢く処理してファイルを簡単に扱えるようにするのに役立ちます。