̃Gg[͂ĂȃubN}[Nɒlj

Unix :: コマンド / zip・unzip



コマンド説明
zip複数ファイルを1ファイルにまとめてZIP圧縮します。ZIP は Windowsで一般的に利用されている圧縮形式で、パスワードを設定することも可能です。なお、圧縮率はそれほど高くありません。
unzipzip 圧縮されたファイルを解凍します。



zip

複数ファイルをまとめて圧縮する

% zip compress.zip file1 file2 file3
  • file1,file2,file3 を compress.zip として圧縮する


ディレクトリ配下のファイルすべてを圧縮する

% zip compress.zip -r /path/to/dir
  • -r : ディレクトリ配下をまとめて圧縮


上記の場合、/path/to/dir のツリー構造を保ったまま圧縮されるので、解凍後は、/path/to/dir をたどっていかないと目的のファイルにたどり着けません。
/path/to/dir のツリー構造が不要な場合は以下のように一旦対象ディレクトリ直下まで cd してから zip します。

% cd /path/to; zip compress.zip -r dir


パスワードを設定して圧縮する

% zip compress.zip -r dir -e
Enter password:
Verify password:
  • -e : パスワードの指定。対話形式でパスワードを設定します。


% zip -P your_password compress.zip -r dir
  • -P : 非対話形式でパスワードを設定。バッチなどに有効。このオプションは最初に指定する。


特定の拡張子を持つファイルのみ圧縮する

% zip compress.zip -r dir -i \*.txt
  • -i : 拡張子の指定。このオプションは最後に指定する。


unzip

圧縮されているファイルとディレクトリの一覧を見る

% unzip -l archive.zip
Archive:  archive.zip
  Length     Date   Time    Name
 --------    ----   ----    ----
        0  06-12-15 19:44   archive/
        0  04-22-12 12:50   archive/dir/
      614  10-06-05 22:18   archive/dir/file.txt
  • 実際に解凍はされない


圧縮されているもの全てを解凍する

% unzip archive.zip


指定したファイルのみ解凍する

% unzip archive.zip archive/dir/file.txt
Archive:  archive.zip
  inflating: archive/dir/file.txt


指定したディレクトリのみ解凍する

% unzip archive.zip archive/dir/*
Archive:  archive.zip
   creating: archive/dir/file.txt
  • 指定するディレクトリにおいて、末尾に *(ワイルドカード)が必要





unix/command/zip.txt