本連載は、Linuxのコマンドについて、基本書式からオプション、具体的な実行例までを紹介していきます。今回は、「unzip」コマンドの応用編です。
本連載では、Linuxの基本的なコマンドについて、基本的な書式からオプション、具体的な実行例までを分かりやすく紹介していきます。今回は、ZIPファイルからファイルを取り出す「unzip」コマンドの応用編を解説します。
「unzip」は、ZIP形式で圧縮されているファイルから、ファイルを取り出すためのコマンドです。「ZIPファイルを展開する」と表現されることもあります。
unzipコマンドの主なオプションは次の通りです。
オプション | 意味 |
---|---|
-u | 更新されたファイルまたは新規ファイルだけを展開する |
-f | ファイルの更新だけを行い、新規作成はしない |
-o | ファイルを確認なしに上書きする |
-n | ファイルを上書きしない |
-x | 展開しないファイルを指定する |
-d ディレクトリ | 指定したディレクトリに展開する |
-j | ディレクトリを作成せずに展開する |
-p | 展開した内容を標準出力へ出力する(「unzip -p ZIPファイル | more」のように使用する) |
-C | ファイル指定時の大文字小文字を区別する |
-L | 展開するファイル名を小文字にする |
-l | ZIP内のファイルを一覧表示する |
-t | ZIPファイルに破損がないかテストする(どのように展開されるかを確認することも可能) |
-z | ZIPファイルのコメントを表示する |
-q | 動作中のメッセージを減らす(「-qq」でさらに減らす) |
-v | 動作中のメッセージを詳しくする |
-M | 動作中のメッセージを「more」コマンドで表示する |
unzipコマンドでは「unzip ZIPファイル」でZIPファイル全体を、「unzip ZIPファイル ファイル名」でZIPファイルから指定したファイルだけを展開することができます(本連載第35回)。
さらに、「-t」オプションを使用することで、ZIPファイル内にどのようなファイルがあるのかを確認することができます。
「-t」は、ZIPファイルに破損などがないかどうかをチェックするオプションですが、ZIPファイルの内容も一緒に表示されるので、内容を確認する用途にも使えます。
例えば、「data0720.zip」の中身を確認したい場合は、「unzip -t data0720.zip」と指定します(画面1)。なお、今回の実行例で使用している「text0720.zip」は、本連載第34回で作成したZIPファイルです。
unzip -t data0720.zip
(「data0720.zip」に収納されているファイルを一覧表示する)
「unzip ZIPファイル ファイル名」で、指定したファイルを取り出すことができます。このときには、サブディレクトリも同時に作成されます。サブディレクトリを作成せずに、ファイルだけを取り出したい場合は、「-j」オプションを使用します(画面2)。
unzip -j data0720.zip "*.txt"
(「data0720.zip」から「*.txt」だけを展開する。サブディレクトリは作成しない)
本連載第35回では、同じZIPファイル(data0720.zip)を「-j」オプションなしで取り出しているので、興味がある方は比較してみてください。
【訂正:2022年7月29日午後21時00分】本記事の初出時、unzipコマンドの主なオプション表で「-p パイプで受け取ったファイルを展開する」とありましたが、正しくは「-p 展開した内容を標準出力へ出力する(『unzip -p ZIPファイル | more』)のように使用する」でした。お詫びして訂正いたします。該当箇所は既に修正済みです(編集部)。
PC-9801N/PC-386MからのDOSユーザー。1992年より生産管理のパッケージソフトウェアの開発およびサポート業務を担当。のち退社し、専業ライターとして活動を開始。著書に『図解でわかるLinux』『らぶらぶLinuxシリーズ』『はじめてでもわかるSQLとデータ設計』『シェルの基本テクニック』など。2011年より、地方自治体の在宅就業支援事業にてPC基礎およびMicrosoft Office関連の教材作成およびeラーニング指導を担当。
Copyright © ITmedia, Inc. All Rights Reserved.