No.065圧縮と転送
unzip
アンジップ・ZIP展開
ZIP形式アーカイブを展開します。一覧表示、整合性確認、展開先指定もでき、異なるOS間で受け渡されたファイルの展開に向きます。
答えよく使う形
$ printf "hellon" > demo.txt
zip demo.zip demo.txt
unzip -l demo.zip
Archive: demo.zip
Length Date Time Name
--------- ---------- ----- ----
6......... ..... demo.txt$ mkdir out
unzip demo.zip -d out
find out -maxdepth 2 -type f
out/demo.txt
$ unzip archive.zip
練習用の部屋です。何を打っても本物は変わりません。本物の Linux で続ける →
どんなコマンド?
ZIP形式の配布物や提出物を展開したい時、Windowsから受け取ったアーカイブの中身を確認したい時、展開前に一覧や整合性を確認したい時に使います。
unzipは、ZIP形式アーカイブの内容を一覧表示したり、整合性を確認したり、実際に展開したりするコマンドです。Windows環境とのファイル受け渡しで非常によく使われるため、Linux側でも確実に扱えるようにしておくと実務で役立ちます。
既定では現在のディレクトリへ展開し、アーカイブ内のディレクトリ構造も再現します。展開前に-lで一覧、-tで整合性確認、-dで展開先指定を行うと安全です。既定ではアーカイブ自体は削除されません。
最小構成のサーバーではunzipが最初から入っていないことがあります。また、既存ファイルの上書き方針を理解せずに使うと、意図しない展開結果を招くことがあります。
書き方とオプション
組み立ててみるオプションを押すと、下の1行に足されます。もう一度押すと外れます。
$ unzip
使用例と実行結果
行を押すとコピーできます。
Archive: demo.zip
Length Date Time Name
--------- ---------- ----- ----
6......... ..... demo.txtout/demo.txt
まず安全に試す
3分ミッション
手を動かすと覚えやすくなります。できたものに印を付けてください(この端末に残ります)。
0 / 2
つまずいたとき
意図しない場所へ展開された
原因現在位置やアーカイブ内のパス構造を確認せずに展開しました。
こうするunzip -lで一覧を確認し、必要なら-dで専用ディレクトリへ展開します。
既存ファイルが上書きされた
原因上書き方針を確認せずに展開しました。
こうする-nで上書き禁止にするか、展開先を分けてから確認します。
終わったときの数(戻り値)
$ echo $?
- 0正常終了。処理に成功しました。
- >0対象不存在、破損、権限不足、上書き不可などで処理できませんでした。
気をつけることと入れ方
危険度は低いですが、現在のディレクトリへそのまま展開すると、既存ファイルの上書きや想定外の階層展開を招くことがあります。まず一覧表示と整合性確認を行い、必要なら展開先を分けます。
環境による違い
UnZipはInfo-ZIP系実装が広く使われます。暗号化や属性復元、文字化け時の挙動は実装や作成元環境の影響を受けることがあります。
確かめた環境2026-04-09 に確認
よくある質問
unzipはZIP以外も展開できますか。
基本的にはZIP形式専用です。tar.gzやtar.xzはtarと各圧縮コマンドで扱います。
展開せず中身だけ見られますか。
はい。-lで一覧表示、-tで整合性確認、-pで内容の標準出力ができます。
unzip を最後まで読みました。
Linux コマンド辞典に戻る133 / 144