新Linux入門|まとめて圧縮&すぐ展開!Linuxで覚えるtar・zipコマンド

 Linuxで作業をしていると、ファイルやフォルダをまとめて保存したいメールで送るために圧縮したい
または解凍して中身を確認したいときがありますよね。

そんなときに大活躍するのが、tarコマンドzipコマンド です。
この2つを使いこなせば、Linuxでの圧縮・展開操作がぐっと効率的になります。

この記事では、AlmaLinux 9.6を使って、tarとzipの基本的な使い方や違いをわかりやすく解説します。

📦 tarコマンドとは?

 tar コマンドは、複数のファイルやディレクトリをひとつのアーカイブファイルにまとめるためのコマンドです。
 実は、tar自体は「圧縮」ではなく「まとめる」ことが目的のツールですが、オプションを指定することでgzipbzip2などによる圧縮も同時に行えます。

項目内容
コマンド名tar
主な用途ファイルやディレクトリをまとめてアーカイブ化、または展開
よく使う形式.tar, .tar.gz, .tar.bz2
特徴圧縮形式を選べる(gzip, bzip2, xzなど)

⚙️ tarコマンドの基本書式

tar [オプション] [アーカイブファイル名] [対象ファイルやディレクトリ]
オプション説明
-cアーカイブを作成する(create)
-xアーカイブを展開する(extract)
-zgzip形式で圧縮または展開する。
-jbzip2形式で圧縮または展開する。
-v処理の詳細を表示(verbose)
-f出力または入力ファイル名を指定(file)

💡 ポイント
オプションは複数まとめて書くのが一般的です。
たとえば -czvf は「作成+gzip圧縮+詳細表示+ファイル指定」を意味します。

🧾 tarコマンドの使用例と出力解説

① ディレクトリをまとめて圧縮する

[suzuki@AlmaLinux ~]$ tar -czvf backup.tar.gz Documents/
Documents/
Documents/report.txt
Documents/data.csv

📘 解説

  • -c でアーカイブを作成し、-z でgzip圧縮。
  • -v で進行状況を表示し、-f backup.tar.gz に保存します。
  • Documents/ フォルダが backup.tar.gz としてまとめられました。

② 圧縮ファイルを展開する

[suzuki@AlmaLinux ~]$ tar -xzvf backup.tar.gz
Documents/
Documents/report.txt
Documents/data.csv

📘 解説

  • -x は展開モード。
  • -z はgzip形式を展開することを意味します。
  • 展開先はデフォルトで現在のディレクトリです。

③ 展開先を指定して解凍する

[suzuki@AlmaLinux ~]$ tar -xzvf backup.tar.gz -C /tmp/

📘 解説
-C オプションを付けると、指定したディレクトリ(ここでは /tmp)に展開できます。

🧰 zipコマンドとは?

 zip コマンドは、WindowsやmacOSでも使われるZIP形式の圧縮ファイルを作成するためのコマンドです。
ファイル単位の圧縮が可能で、互換性の高さが魅力です。

項目内容
コマンド名zip
主な用途ファイルやディレクトリの圧縮
圧縮形式ZIP(.zip)
特徴Windowsでもそのまま使える互換性の高さ

⚙️ zipコマンドの書式

zip [オプション] [出力ファイル名.zip] [対象ファイルやディレクトリ]
オプション説明
-rディレクトリを再帰的に圧縮
-q実行結果を表示しない(quiet)
-v詳細を表示(verbose)
-x指定したファイルを除外して圧縮
-eパスワード付きZIPを作成

🧾 zipコマンドの使用例と出力解説

① ディレクトリをZIP形式で圧縮

[suzuki@AlmaLinux ~]$ zip -r myfiles.zip Documents/
  adding: Documents/ (stored 0%)
  adding: Documents/report.txt (deflated 63%)
  adding: Documents/data.csv (deflated 70%)

📘 解説

  • -r でディレクトリを再帰的に圧縮。
  • 圧縮率(deflated)がファイルごとに表示されます。

② ZIPファイルを展開(unzip)

[suzuki@AlmaLinux ~]$ unzip myfiles.zip
Archive:  myfiles.zip
   creating: Documents/
  inflating: Documents/report.txt
  inflating: Documents/data.csv

📘 解説
unzip コマンドでZIPファイルを展開します。
展開されたファイルはZIPの中の階層構造をそのまま再現します。

🧠 tar と zip の違いを整理!

比較項目tarコマンドzipコマンド
主な目的ファイルをまとめる+圧縮圧縮ファイルを作成
代表的拡張子.tar, .tar.gz, .tgz.zip
圧縮アルゴリズムgzip, bzip2, xz など自由に選択可ZIP 固定
再帰的圧縮デフォルトで可能-rオプションが必要
互換性Linux/Unix中心Windows/macOSでも利用可
展開コマンドtar -x...unzip

💡 ポイント
Linuxのバックアップなどでは tar が主流ですが、
他のOSとのやりとりでは zip が便利です。

🧾 実行例まとめ

[suzuki@AlmaLinux ~]$ tar -czvf archive.tar.gz Documents/
[suzuki@AlmaLinux ~]$ tar -xzvf archive.tar.gz
[suzuki@AlmaLinux ~]$ zip -r archive.zip Documents/
[suzuki@AlmaLinux ~]$ unzip archive.zip

📘 解説
これらの4行を覚えておけば、Linux上での基本的な圧縮・展開作業は完璧です。

✅ まとめ:tarとzipを使い分けて効率アップ!

  • tar はまとめてアーカイブ+圧縮に最適。Linuxサーバーのバックアップなどに使われます。
  • zip はマルチOS対応で、メール送信やデータ共有に便利。
  • どちらも覚えておくと、ファイル管理の自由度が一気に上がります!

💡 覚えておきたい4つの定番コマンド

tar -czvf archive.tar.gz target_dir/
tar -xzvf archive.tar.gz
zip -r archive.zip target_dir/
unzip archive.zip