サイトアイコン ITC Media

【全て実例付き】Linuxのzipコマンド・オプションの全て

(最終更新月:2022年9月)

✔このような方へ向けて書かれた記事となります

「Linuxでzipコマンドについて詳しく知りたい」

「zipコマンドのオプションってどんなものがあるの?」

「zipファイルの展開方法や情報取得の方法が知りたい」

✔当記事を通じてお伝えすること

当記事では、ターミナル上からファイルやフォルダをzip化するだけでなく、zip化したファイルを展開する方法やコメントも含めた情報を取得する方法まで全てわかります。

ぜひ最後までご覧ください。

公開しているアプリはLinuxOS上に構築したサーバーにより公開しています。

自宅のパソコンからWebサーバーまで全てLinuxを使用している著者による記事となります。

created by Rinker
¥2,970 (2024/12/27 09:19:56時点 楽天市場調べ-詳細)
LINUXコマンドを極めよう!

zipコマンドとは?

zipコマンドは、ターミナル上でzipファイルを作成するものです。

zipコマンドの基本知識として、以下を見ていきます。

zipコマンドの基本構成

zipコマンドの基本構成は以下のとおりとなります。

zip オプション zipファイル名 ファイル名

zipコマンドの使用例

zipコマンドの使用例を解説します。

まずは以下のコマンドで、zipがインストールされているかを見てみましょう。

zip -v 

もしzipがインストールされていないなら、以下のコマンドでインストールしてから先にすすみましょう。

sudo apt install zip

ファイルをzip化

zip ZIPファイル名 zip化したいファイル名

「archive.zip」がZIPファイル名で、「file1.txt」をzip化すると以下のとおり。

$ zip archive.zip file1.txt
  adding: file1.txt (stored 0%)

フォルダをzip化

zip -r ZIPファイル名 zip化したいフォルダ名

「archive.zip」がZIPファイル名で、「dir1」がzip化したいフォルダの場合は以下の通り。

$ zip -r archive2.zip dir1
  adding: dir1/ (stored 0%)
  adding: dir1/file2.txt (stored 0%)

複数のファイルをzip化

zip ZIPファイル名 zip化したいファイル① zip化したいファイル② ・・・

「file1.txt」「file2.txt」をZIP化します。

$ zip archive3.zip file1.txt file2.txt
  adding: file1.txt (stored 0%)
  adding: file2.txt (stored 0%)

「*」を使う方法もあります。

zip ZIPファイル名 *.ファイル拡張子

txtファイルを全てZIP化するには以下のとおりです。

$ zip archive4.zip *.txt
  adding: file1.txt (stored 0%)
  adding: file2.txt (stored 0%)

既存のzipファイルにあとから追加

既存のzipに追加するには、ZIPファイル名を既存のZIPファイル名にすれば追加できます。

$ zip archive.zip file2.txt
  adding: file2.txt (stored 0%)

そもそもzipファイルって何?

zipファイルは、複数のファイルを同箇所に集めて、圧縮したものです。

同箇所に集めるとは、一つのフォルダに入れているイメージですが、サイズを圧縮することで、データの保存や転送がより簡単になります。

拡張子は、「.zip」で表されます。

zipコマンドのオプション一覧

zipコマンドに、オプションを付けると、新たな機能が追加されます。

こちらでは以下のオプションについて解説していきます。

ディレクトリを追加: -r

-rオプションを追加すると、ディレクトリをZIP化できます。

$ zip -r archive55.zip dir1
  adding: dir1/ (stored 0%)
  adding: dir1/file3.txt (stored 0%)

パスワード付き: -e

-eオプションを追加すると、ZIPファイルにパスワードがつけられます。

zip -e pwd.zip file1.txt file2.txt
Enter password: <パスワードは表示されません>
Verify password:  <パスワードは表示されません>
  adding: file1.txt (stored 0%)
  adding: file2.txt (stored 0%)

既存zipからファイルを削除: -d

-dオプションで、ZIPファイルから指定したファイルやフォルダを削除できます。

$ zip -d archive.zip file1.txt
deleting: file1.txt

zipファイルを更新: -f / -u

-fや-uオプションは、ファイルを更新する際に使えるオプションです。

違いは以下の通り。

$ zip -f archive.zip file1.txt file2.txt file3.txt
freshening: file1.txt (stored 0%)

-fオプションでは、変更してないファイルや新しいファイルは更新・追加されません。

上記の例では、file1.txtのみ新しくなっているので、追加されます。

$ zip -u archive.zip file1.txt file2.txt file3.txt
updating: file1.txt (stored 0%)
  adding: file3.txt (stored 0%)

-uオプションでは、変更したファイルと新しいファイルが更新・追加されます。

コメントを追加: -z

-zオプションでは、コメントを追加できます。

zip -z archive2.zip *.txt
  adding: file1.txt (stored 0%)
  adding: file2.txt (stored 0%)
  adding: file3.txt (stored 0%)
  adding: new1.txt (stored 0%)
enter new zip file comment (end with .):
this is a comment.
.

コメントは「.(ドット)」を入力すれば完了となります。

zipファイルを展開:unzipコマンド

ZIP化したファイルを展開する方法は以下のとおりです。

unzip ZIPファイル名

unzipの実例

「archive.zip」を展開するには以下のとおりです。

$ unzip archive.zip
Archive:  archive.zip
 extracting: file1.txt               
 extracting: file2.txt               
 extracting: file3.txt 

unzipで文字化けするときは

Ocp932オプションを追加すれば、日本語の文字化けを回避できます。

$ unzip -Ocp932 [解凍したいファイル名].zip

-Ocp932(ハイフン、大文字のオー、シー、ピー、932)

zipファイルの情報を見る:zipinfoコマンド

ZIPINFOコマンドでは、ZIPファイルの中身や詳細が確認できます。

こちらでは以下の2つをご紹介します。

情報を確認する方法

基本的な使い方は以下のとおり。

zipinfo ZIPファイル名

「archive.zip」を見てみましょう。

$ zipinfo archive.zip
Archive:  archive.zip
Zip file size: 644 bytes, number of entries: 4
-rw-rw-r--  3.0 unx       13 tx stor 22-Sep-21 15:52 file1.txt
-rw-rw-r--  3.0 unx        0 bx stor 22-Sep-17 09:43 file2.txt
-rw-rw-r--  3.0 unx        0 bx stor 22-Sep-17 11:03 file3.txt
-rw-rw-r--  3.0 unx        9 tx stor 22-Sep-17 10:59 new1.txt
4 files, 22 bytes uncompressed, 22 bytes compressed:  0.0%

コメントも含めて確認する方法:-zオプション

-zオプションで、コメントも表示されられます。

見てみましょう。

$ zipinfo -z archive.zip
Archive:  archive.zip
this is a comment.
Zip file size: 644 bytes, number of entries: 4
-rw-rw-r--  3.0 unx       13 tx stor 22-Sep-21 15:52 file1.txt
-rw-rw-r--  3.0 unx        0 bx stor 22-Sep-17 09:43 file2.txt
-rw-rw-r--  3.0 unx        0 bx stor 22-Sep-17 11:03 file3.txt
-rw-rw-r--  3.0 unx        9 tx stor 22-Sep-17 10:59 new1.txt
4 files, 22 bytes uncompressed, 22 bytes compressed:  0.0%

コメントはこの位置になります。

まとめ:LinuxでZIPファイルを扱うならZIPコマンドがおすすめ

当記事の内容をまとめます。

zipコマンドはLinuxやMacで使えるファイルやフォルダをzip化するコマンドです。

zip以外にも、unzipやzipinfoコマンドも使いこなせば、zipファイルについての知識は充分。

ぜひここでマスターしてください。

✔Linuxの主要コマンド37選

モバイルバージョンを終了