Linuxでzipファイルをコマンドで解凍する方法

公開日:2019/10/09 更新日:2019/10/09
Linuxでzipファイルをコマンドで解凍する方法のサムネイル

はじめに

Linuxでzipファイルを扱いたい場面はたまにあると思います。ファイルブラウザなどで目的のzipファイル上で右クリックして「ここで展開する」をクリックすれば解凍できますが、端末から解凍したい場合はunzipコマンドを使用するのが簡単です。この記事では、unzipを使う手順をまとめます。 もしLinuxでファイル、ディレクトリを圧縮してzipファイルを作成したい場合は、以下にまとめたので見てみてください。

www.virment.com

Linuxでファイルやディレクトリを圧縮してzipファイルを作成するには、zipコマンドを使用します。この記事では、zipコマンドの使い方をまとめます。特にパスワード保護してzip化する場合は注意が必要なのでその点もまとめます。

前提と環境

ここではUbuntu18.04を使用しますが、インストール方法がディストリビューションによって異なるだけで基本的な使い方は同じになります。

  • OS : Ubuntu 18.04

unzipをインストールする

Ubuntu18.04では、デフォルトでunzipコマンドはインストールされていないため、以下でインストールします。

$ sudo apt install unzip

ちなみに、CentOSではyumを使えばOKです。

$ sudo yum install unzip

unzipでファイルを解凍する

最もシンプルな使い方は以下です。

$ unzip yourzip.zip

上記を実行すると、現在のディレクトリにyourzipの中身が展開されます。もし、解凍先となるディレクトリを指定したい場合は、-dオプションを使用します。 例えば、mydirというディレクトリ下にzipファイルの中身を展開したい場合は、以下のように使います。

$ unzip yourzip.zip -d ./mydir

解凍先となるディレクトリのパスを与えればOKです。

unzipコマンドの途中経過を表示したくない場合

unzipコマンドを実行すると、解凍して展開したファイル名が全て端末に表示されますが、これを表示させたくない場合は、-qオプションを使用します。

unzip -q yourzip.zip -d ./mydir

実際に解凍する前にzipファイルの中身を確認する

-lオプションを使用することで実際に展開することなくzipファイルの中身を確認することができます。

$ unzip -l yourzip.zip
Archive:  yourzip.zip
  Length      Date    Time    Name
---------  ---------- -----   ----
   248744  2019-09-27 14:17   IMG_1176.png
   277185  2019-09-27 14:17   IMG_1177.png

  (...省略...)

   231777  2019-09-27 15:55   IMG_1191.png
   227325  2019-09-27 15:56   IMG_1192.png
---------                     -------
  4580742                     17 files

パスワード付きのzipファイルを解凍する

パスワード付きの場合は、-Pオプションにパスワードを渡して解凍します。

$ unzip -P yourpassword yourzip.zip

全て上書きして解凍する

unzipは、デフォルトでは解凍時に同じファイルがある場合は、上書きするか、全て上書きするか、スキップするかを以下のように同じファイルが見つかる度に確認してきます。

$ unzip yourzip.zip
Archive:  yourzip.zip
replace ./IMG_1176.png? [y]es, [n]o, [A]ll, [N]one, [r]ename: 

もし上記の確認が不要で全て上書きして良い場合は、-oオプションを使用します。

$ unzip -o yourzip.zip

同じファイルは上書きせずに解凍する

同じファイルを一切上書きさせたくない場合は、-nオプションを使用します。

$ unzip -n yourzip.zip

まとめ

意外に使うことのあるunzipについてまとめました。

関連記事

開発アプリ

nanolog.app

毎日の小さな出来事をなんでも記録して、ログとして残すためのライフログアプリです。