【Linuxコマンド】zipでファイルを圧縮する方法と主なオプション

Linuxでファイルを圧縮するにはどうすればいいの?
zipコマンドで複数のファイルを圧縮したい
zipコマンドでディレクトリごと圧縮したい
圧縮されたファイルを解凍するにはどうすればいいの?

Linuxにはファイルを圧縮するのに便利な「zip」コマンドが用意されています。

開発の現場においてソースファイルやパラメータファイルなどファイルを一括して圧縮するときに、「zip」コマンドはよく使用されます。

ここでは「zip」コマンドの使い方を知りたい方のために、以下の内容で解説していきます。

  • zipコマンドの基本的な使い方
  • zipコマンドの便利な使い方
  • zipコマンドの主なオプション

この記事では「zip」コマンドについてわかりやすく解説してますので、ぜひ使い方を覚えておきましょう!

zipコマンドとは

「zip」コマンドはファイルやディレクトリを圧縮するためのコマンドです。

ZIP形式のファイルはLinuxにとどまらず、WindowsやMacなどさまざまなOSで使われている圧縮形式です。そのため、Linuxで圧縮したzipファイルを、WindowsやMacで展開することも可能です。

zipコマンドは以下のように記述します。

$zip アーカイブ名 ファイル名

アーカイブ名には圧縮した際のファイル名を指定します。ファイル名には「test1.txt test2.txt」のように複数のファイルを指定することも可能です。

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

ここではzipコマンドの基本的な使い方について見ていきましょう!

ファイルを圧縮

ここではディレクトリ「/tmp/test」に存在する「file_01.txt」というファイルをアーカイブ名「test」で圧縮してみます。

$ zip test file_01.txt
$ ls

実行結果
zip_image1

「test.zip」というアーカイブでzipファイルが作成されることがわかりますね!

複数のファイルを圧縮

次に複数のファイルを圧縮する方法を紹介します。

$ zip test file_01.txt file_02.txt
$ ls

実行結果
zip_image2
複数のファイルも問題なく圧縮できることがわかりますね!また、ファイル名が共通している場合は*(ワイルドカート)を使用すると便利です。

test file*
$ ls

こちらも同様に複数のファイルを圧縮したアーカイブが作成されます。

unzipコマンドで圧縮ファイルを解凍

圧縮したファイルを解凍する場合は「unzip」コマンドを使用します。「unzip」コマンドは以下のように記述します。

$unzip アーカイブ名

以下の例では「/tmp/test」に存在するアーカイブ「test.zip」をunzipコマンドで解凍しています。

$ unzip test.zip
$ ls

実行結果
zip_image3

「unzip」コマンドで解凍後、ファイルが展開されていることがわかりますね!

zipコマンドの主なオプション

「zip」コマンドで使用される主なオプションです。

コマンドオプション
[email protected]圧縮するファイル名を対話形式で入力
-c圧縮時にコメントを付ける
-e圧縮時にパスワードを指定
-rディレクトリの圧縮
-u圧縮されているファイル内のファイルを更新
-zアーカイブにコメントを付ける

-r:ディレクトリごと圧縮

ファイルをディレクトリごと圧縮するには「-r」オプションを使用します。

以下の例ではディレクトリ「test」を圧縮しています。

$ zip -r testa test
$ ls

実行結果
zip_image4

ディレクトリごと圧縮されたことがわかりますね!

-e:圧縮ファイルにパスワードを設定

ファイルにパスワードを指定する場合は「-c」オプションを使用します。以下の例では「file_01.txt」にパスワードを付加して圧縮しています。

$ zip -e test file_01.txt 
Enter password: 
Verify password: 

「Enter password」と「Verify password」には同じパスワードを入力します。

「unzip」コマンドでの解凍時はパスワードを求められますので、設定したパスワードを入力すれば解凍できます。

Linuxについてもっと知りたい方へ

そもそもLinuxについて、


実はなんとなくしか理解していない…
Linuxを効率よく学習する方法が知りたい

といった情報を知りたい方は、以下の記事も参考にしてみてくださいね!


【完全保存版】エンジニア監修!Linuxおすすめ入門書7選
更新日 : 2018年10月26日

【完全保存版】Linux入門サイトおすすめ7選
更新日 : 2019年9月11日

まとめ

ここでは、ファイルを圧縮する「zip」コマンドについて、

  • 「zip」コマンドとは
  • 「zip」コマンドの使い方
  • 「unzip」コマンドの使い方
  • 「zip」コマンドのオプションの使いかた

について解説しました。「zip」コマンドでファイルを圧縮する機会は多いと言えますので、この機会にぜひ覚えておきましょう。

もし、「zip」コマンドの使い方を忘れてしまったら、この記事を参考にしてくださいね!

LINEで送る
Pocket

SEからWebエンジニアへ転職した理由

侍エンジニア塾卒業生の小池さんは、以前は社内SEとして約5年ほど勤務していました。しかし業務内容は社内のヘルプデスク対応など、プログラムを書く仕事は全くなかったそうです。

SEながらプログラムを書けない現状に「将来仕事がなくなるんじゃないか」と不安を感じ、プログラミング学習を決意。

弊社スクールで学習し、無事ベンチャー企業のプログラマーとして転職に成功しました。そんな小池さんの学習法や転職体験談を伺いましたので、是非ご覧ください。

「プログラミングができないSEは仕事がなくなる」不安を感じたSEが未経験から転職成功するまで
更新日 : 2019年10月7日

書いた人

侍ブログ編集部

侍ブログ編集部

侍エンジニア塾は「人生を変えるプログラミング学習」をコンセンプトに、過去多くのフリーランスエンジニアを輩出したプログラミングスクールです。プログラミングに役立つ情報や有用な情報を発信していきます。
サービスページはこちら
ツイッターはこちら
フェイスブックはこちら

おすすめコンテンツ

あなたにぴったりなプログラミング学習プランを無料で診断!

プログラミング学習の効率を劇的に上げる学習メソッドを解説