本連載は、Linuxのコマンドについて、基本書式からオプション、具体的な実行例までを紹介していきます。今回は、「unzip」コマンドです。
本連載では、Linuxの基本的なコマンドについて、基本的な書式からオプション、具体的な実行例までを分かりやすく紹介していきます。今回は、ZIPファイルからファイルを取り出す「unzip」コマンドを解説します。
「unzip」は、ZIP形式で圧縮されているファイルから、ファイルを取り出すためのコマンドです。「ZIPファイルを展開する」と表現されることもあります。
unzipコマンドの主なオプションは次の通りです。
オプション | 意味 |
---|---|
-u | 更新があったファイルまたは新規ファイルだけを展開する |
-f | ファイルの更新だけを行い、新規作成はしない |
-o | ファイルを確認なしに上書きする |
-n | ファイルを上書きしない |
-x | 展開しないファイルを指定する |
-d ディレクトリ | 指定したディレクトリに展開する |
-j | ディレクトリを作成せずに展開する |
-p | パイプで受け取ったファイルを展開する |
-C | ファイル指定時の大文字小文字を区別する |
-L | 展開するファイル名を小文字にする |
-l | ZIP内のファイルを一覧表示する |
-t | ZIPファイルに破損がないかテストする(どのように展開されるかを確認することも可能) |
-z | ZIPファイルのコメントを表示する |
-q | 動作中のメッセージを減らす(「-qq」でさらに減らす) |
-v | 動作中のメッセージを詳しくする |
-M | 動作中のメッセージを「more」コマンドで表示する |
「unzip ZIPファイル」で、ZIPファイルを展開します(画面1)。ZIPファイルの拡張子は省略できます。なお、今回の実行例で使用している「text0720.zip」と「data0720.zip」は第34回の実行例で作成したZIPファイルです。
unzip text0720.zip
(「text0720.zip」を展開する、全てのファイルを取り出す)
展開先に同名のファイルがある場合は、どのように処理するかを選択するプロンプトが表示されます(画面2)。上書きする場合は「y」、展開しない場合は「n」、全て上書きする場合は大文字で「A」、全て展開しない場合は大文字で「N」、ファイル名を変更する場合は「r」を入力します。
オプションで、常に上書きする(-o)/上書きしない(-n)/新しい場合のみ上書きする(-u)を指定することもできます。
ZIPファイルにディレクトリが含まれている場合は、同名のディレクトリが作成され、その中にファイルが展開されます。ディレクトリを作成したくない場合は、「-j」オプションを使用します。
各オプションの詳細については、あらためて取り上げる予定です。
unzipコマンドでは、展開するファイルを指定することができます。例えば、「*.txt」だけを展開したい場合は、「unzip ZIPファイル "*.txt"」のように指定します(画面3)。
unzip data0720.zip "*.txt"
(「data0720.zip」から「*.txt」だけを展開する)
なお、「unzip ZIPファイル "*.txt"」を実行する際には、「""」の指定を忘れないようにしましょう(※)。
カレントディレクトリに「*.txt」がない場合は問題ありませんが、例えば「test.txt」が存在した場合は、シェルがワイルドカードを展開して「unzip ZIPファイル text.txt」が実行されることになります。
PC-9801N/PC-386MからのDOSユーザー。1992年より生産管理のパッケージソフトウェアの開発およびサポート業務を担当。のち退社し、専業ライターとして活動を開始。著書に『図解でわかるLinux』『らぶらぶLinuxシリーズ』『はじめてでもわかるSQLとデータ設計』『シェルの基本テクニック』など。2011年より、地方自治体の在宅就業支援事業にてPC基礎およびMicrosoft Office関連の教材作成およびeラーニング指導を担当。
Copyright © ITmedia, Inc. All Rights Reserved.