Windowsなどでよく使われる「.zip」形式の圧縮ファイルは、Linuxでも扱うことが可能です。
その際に使うのが、定番の解凍ツール「unzipコマンド」。
この記事では、Linuxでzipファイルを解凍するためのunzipのインストール方法と基本的な使い方、便利なオプションまで初心者向けに丁寧に解説します。
unzipとは?対応しているファイル形式
unzip
は、主に「.zip」形式の圧縮ファイルをコマンドラインで解凍するためのツールです。
対応しているファイル形式:
- 拡張子
.zip
の圧縮ファイル(標準的なZIP形式) - パスワード付きZIPファイル(※一部制限あり)
- 複数ファイルやフォルダをまとめたZIPアーカイブ
- WindowsやmacOSで作成されたZIPファイル
Linuxには他にも様々な圧縮形式(tar.gz, bz2, xzなど)がありますが、特にWindowsとのファイルやり取りが多い場合は、unzipコマンドの使い方を覚えておくと便利です。
unzipコマンドのインストール方法
多くのLinuxディストリビューションでは、unzipはデフォルトではインストールされていない場合があります。まずはインストールしましょう。
Ubuntu / Debian 系:
sudo apt update
sudo apt install unzip -y
CentOS / RHEL 系(バージョン7以降):
sudo yum install unzip -y
または CentOS 8以降、Fedora の場合:
sudo dnf install unzip -y
インストールの確認:
インストールが成功したかどうかを確認するには:
unzip -v
このコマンドを実行すると、unzipのバージョン情報が表示されます。例:
UnZip 6.00 of 20 April 2009, by Debian. Original by Info-ZIP.
Latest sources and executables are at:
http://www.info-zip.org
...
unzipの基本的な使い方
基本的なzipファイルの解凍:
unzip ファイル名.zip
例:
unzip sample.zip
このコマンドを実行すると、sample.zip
の内容が現在のディレクトリ(カレントディレクトリ)に解凍されます。
解凍中は、展開されるファイル名が順次表示されます:
Archive: sample.zip
inflating: file1.txt
inflating: file2.txt
creating: images/
inflating: images/photo1.jpg
inflating: images/photo2.jpg
パスワード付きZIPの解凍:
パスワード付きのZIPファイルを解凍する場合:
unzip -P パスワード ファイル名.zip
例:
unzip -P mysecret sample.zip
代わりに以下の方法が安全です:
unzip sample.zip
このように実行すると、パスワードが必要な場合は対話形式でパスワードの入力を求められます。
解凍先の指定・ファイルの中身を確認する方法
解凍先ディレクトリを指定する:
デフォルトでは、zipファイルは現在のディレクトリに解凍されますが、-d
オプションを使って解凍先を指定できます。
unzip ファイル名.zip -d 解凍先ディレクトリ
例:
unzip sample.zip -d ./unzipped/
この例では、sample.zip
の内容が./unzipped/
ディレクトリに解凍されます。指定したディレクトリが存在しない場合は、自動的に作成されます。
zipファイルの内容を確認する(解凍せずに):
zipファイルを実際に解凍せずに内容を確認したい場合は、-l
(リスト)オプションを使います。
unzip -l ファイル名.zip
例:
unzip -l sample.zip
出力例:
Archive: sample.zip
Length Date Time Name
--------- ---------- ----- ----
215 2024-05-19 12:34 file1.txt
312 2024-05-19 12:35 file2.txt
0 2024-05-19 12:35 images/
215642 2024-05-19 12:36 images/photo1.jpg
189325 2024-05-19 12:36 images/photo2.jpg
--------- -------
405494 5 files
これにより、ファイルサイズ、日付、時間、ファイル名など、zipファイル内のファイルに関する情報が表示されます。
よく使うオプション一覧
オプション | 説明 | 使用例 |
---|---|---|
-d | 解凍先ディレクトリを指定 | unzip sample.zip -d ./unzipped/ |
-l | zipファイルの内容をリスト表示(解凍しない) | unzip -l sample.zip |
-o | 既存ファイルを上書きして解凍(確認なし) | unzip -o sample.zip |
-n | 既存ファイルを上書きしない | unzip -n sample.zip |
-j | ディレクトリ構造を無視し、すべてのファイルを現在のディレクトリに展開 | unzip -j sample.zip |
-q | 静かモード(出力を最小限に) | unzip -q sample.zip |
-P | パスワードを指定(セキュリティ上非推奨) | unzip -P password sample.zip |
-t | zipファイルの整合性をテスト(解凍はしない) | unzip -t sample.zip |
-v | 詳細モード(より多くの情報を表示) | unzip -v sample.zip |
よく使う組み合わせ例:
静かに解凍して既存ファイルを上書き:
unzip -qo sample.zip -d ./unzipped/
整合性をチェックしてから解凍:
unzip -t sample.zip && unzip sample.zip
エラー時の対処法
unzipコマンドを使用中に発生する可能性のある一般的なエラーと、その解決方法を紹介します。
エラー内容 | 原因 | 解決策 |
---|---|---|
unzip: command not found | unzipコマンドがインストールされていない | sudo apt install unzip (またはyum /dnf )でインストール |
End-of-central-directory signature not found | ZIPファイルが破損している | ファイルを再ダウンロードするか、修復ツールを使用 |
Cannot create ... Permission denied | 解凍先のディレクトリに書き込み権限がない | sudo をつけて実行するか、解凍先を変更する |
error: invalid password | パスワードが間違っている | 正しいパスワードで再試行 |
error: Zip file structure invalid | ZIPファイルの構造が不正 | 別のソースからファイルを入手 |
No space left on device | ディスク容量不足 | 不要なファイルを削除して空き容量を確保 |
エラーのデバッグ:
エラーの詳細を確認するには-v
(詳細)オプションを使用します:
unzip -v sample.zip
文字化けの対処:
日本語などの非ASCII文字を含むZIPファイルで文字化けが発生する場合は、代替ツールとしてunzip-iconv
を検討してください:
sudo apt install unzip-iconv
unzip -O cp932 japanese.zip
-O cp932
は日本語のShift-JISエンコーディング用のオプションです。
まとめ
Linux環境でも、unzip
を使えばコマンドラインで簡単にZIPファイルを解凍可能です。
ポインtのまとめ:
unzip
は.zip
形式に対応した標準的な解凍コマンドsudo apt install unzip
またはyum install unzip
で簡単にインストール可能- 基本的な使い方は
unzip ファイル名.zip
とシンプル -d
オプションで解凍先を指定、-l
で中身の確認が可能-o
(上書き)や-n
(上書きしない)などのオプションで動作をカスタマイズ- 様々なエラーに対処する方法も覚えておくと安心
サーバー管理・ソフトウェア開発・データ配布など、さまざまな場面で使える基本コマンドですので、ぜひ覚えておきましょう!
ZIPファイルはプラットフォーム間(Windows、macOS、Linux)で広くサポートされているため、異なるOS間でのファイル交換にも最適な形式です。
unzipコマンドをマスターすれば、Linuxでのファイル操作がより効率的になります。
コメント