WinZip – コマンドラインでの利用

WinZip – コマンドラインでの利用



WinZip コマンドラインは、有効なWinZip のライセンス (WinZip 17以上が必要) をお持ちの方向けの無料アドオンで、コマンドプロンプトから直接 WinZip を利用することができます。

  • 繰り返しのタスクを自動化
  • バッチ(.BAT)ファイルやスクリプト言語を直接操作
  • WinZipのアクションを制御するための豊富なコマンドラインオプション

はじめに

「Zip ファイルをコマンドラインでワイルドカードを使って一括解凍したい。」といったことはないでしょうか。

WinZip コマンドラインは、通常の WinZip グラフィカルユーザーインターフェースを使用せずに強力な WinZip の機能を利用するコマンドラインインターフェースです。コマンドプロンプトやバッチ(.BAT)ファイル、スクリプト言語から直接 WinZip を使用することができ、タスクの自動化に最適です。豊富なコマンドラインオプションにより、WinZip の動作を思いのままコントロールすることができます。

特徴

  • 最新の Zipx 圧縮方法をサポート
  • Enterprise-wide パスワード機能をサポート
  • WIP(Windows情報保護)を検出(エンタープライズのみ)
  • XZ 圧縮のサポート
  • 圧縮後、元ファイルをごみ箱へ移動をサポート
  • Microsoft Installer ベースのインストールと削除

機能

圧縮機能の改善

PPMd と bzip2 圧縮方式により、多くのファイル形式で大きな圧縮効果が期待できます。既存の PPMd、bzip2、WavPack 圧縮方式に加えて、新しい LZMA と Jpeg 圧縮を含む「ベスト」方式の zip 操作をサポートします

高度なZipファイルのセキュリティ

使いやすく、最先端のAES暗号化で機密ファイルを保護します。

データの安全性を確保

「パスワードポリシー」をサポートしており、パスワードやパスフレーズの最小長さや文字数、許可される暗号化方法を指定することができます。
コマンドラインアドオンは、WinZipの新しいAES暗号化を完全にサポートしています。

より大きなファイルの作成

64 ビット拡張 Zip ファイル形式のサポートにより、実用的な範囲における Zip ファイルのサイズと容量に関する制限がなくなっています。WinZip コマンドラインには AES 暗号化の機能も含まれています。

ファイル名の国際文字の Unicode サポートとストレージ

ファイルレベルのコメントをUNICODE文字で保存できるようになりました。

Windowsの添付ファイル管理に対応

WinZipはWindowsと連携して、Zipファイルからの危険なファイルタイプの抽出と実行をブロックします。

拡張されたタイムスタンプでファイル保存と解凍

ドキュメント化(英語)

すべてのコマンドとオプションは、参照を容易にするためにWindowsのヘルプファイル形式で記載されています。

インストール

ご使用のシステムに対応したインストーラーをダウンロードしてインストールください。動作には WinZip 17 以降が必要です。

インストール後、C:\Program Files\WinZip などインストールされたフォルダを環境変数 Path に登録してください。

使用方法

WZUNZIPの使用方法

WZUNZIPの一般的な構文は以下の通りです。

wzunzip [options] zipfile [@listfile] [path] [files…]
[括弧]内の要素はオプションです。

オプション
オプションは、WZUNZIPに何をさせたいのか、どのようにするのかを指定します。オプションは別のWZUNZIPリファレンスセクションに個別に記載されていますが、ここでは一般的な情報をいくつか紹介します。

  • オプションは、ハイフン (“-d”) かスラッシュ (“/d”) のどちらかで導入することができます。
  • 複数のオプションは 1 つ以上のスペースで区切らなければなりません (“-d -n” ではなく “-d -n”)。
  • オプションを指定しなかった場合、WZUNZIP は指定されたすべてのファイルを解凍します。

zipfile
zipfile は作業したい Zip ファイルの名前です。ドライブやフォルダを指定することができます。ファイル名の拡張子を指定しない場合、WZUNZIP は “.zip” を追加します。

listfile
@listfile は、Zip ファイルから抽出するファイルのリストを含むテキストファイルの名前です。listfile の各行には 1 つのファイル名を含めることができます。
ファイル名にはワイルドカードを含めることもできます。ワイルドカード指定の「*」は、「*.*」、つまりすべてのファイルを意味するものとします。ワイルドカード指定の “*. “は、”拡張子のないすべてのファイル “を意味します。
スペースを含むファイル名は引用符で囲むことができますが、リストファイルでは必須ではありません。
セミコロン(;)の後に続くテキストは、行の最後まで無視されます。
ここでは、リストファイルの内容の例を示します。

;抽出するファイルのリスト
info.doc
    *.txt ; Extract all .txt files

path
path は、ファイルが展開されるドライブおよび/またはフォルダを指定します。指定しない場合、ファイルは現在のドライブ上の現在のフォルダに展開されます。

files
files は、操作対象となる 1 つ以上のファイルの文字通り指定されたリストです (例えば、リスト化されたファイル、Zip ファイルから抽出されたファイルなど)。ファイル名の指定は、スペースを含むファイル名は二重引用符で囲まなければならないことを除いて、ファイルリスト(上記)と同じルールに従います。listfile も files も指定されない場合、WZUNZIP は .、つまり Zip ファイル内のすべてのファイルを想定しています。


wzunzip test.zip
test.zipからすべてのファイルをカレントディレクトリに展開します。

wzunzip test.zip abc.txt
⇒test.zipからabc.txtを展開します。

wzunzip -d test.zip
⇒ test.zipからすべてのファイルを抽出し、Zipファイルに保存されているフォルダ情報からディレクトリ構造を再作成します。必要に応じて新しいディレクトリが作成されます。
ヒント: フォルダ情報が Zip ファイルに保存されている場合は、ほとんどの場合、-d オプションを使用することになります。

wzunzip -d test.zip c:\docs
⇒ zipファイルに格納されているフォルダ情報からディレクトリ構造を再作成し、test.zipからすべてのファイルを抽出します。ファイルは、C:\docs の下に格納されています。例えば、ファイルOne.docがZipファイルにフォルダ情報がない場合は、C:\Docs\One.docとして格納され、ファイルTwo.docがフォルダBudgetでZipファイルに格納されている場合は、C:\Docs\Budget\Two.docとして格納されます。

wzunzip test.zip @files.lst
⇒ テキストファイルfiles.lstに記載されているすべてのファイルをtest.zipから抽出します。

wzunzip -v test.zip
⇒ test.zipの内容を一覧表示します。

wzunzip -v test.zip *.txt
⇒ test.zip内の拡張子が.txtのファイルを全てリストアップします。

WZZIPの使用方法

wzzipの一般的な構文は 以下の通りです。

wzzip [options] zipfile [@listfile] [files…]
[括弧]内の要素はオプションです。

オプション
オプションは、WZZIP に何をさせたいのか、どのようにするのかを指定します。オプションについては別項の WZZIP リファレンスセクションに個別に記載されていますが、ここでは一般的な情報をいくつか紹介します。

  • オプションはハイフン (“-r”) かスラッシュ (“/r”) のどちらかで指定してください。
  • 複数のオプションは 1 つ以上のスペースで区切らなければなりません (“-r-p” ではなく、”-r -p” です)。
  • オプションを指定しなかった場合、WZZIP は -a (ファイルの追加) を想定しています。

zipfile
⇒zipfile は作業したい Zip ファイルの名前です。ドライブやフォルダを指定することができます。ファイル名の拡張子を指定しない場合、WZZIP は “.zip” を追加します。別の拡張子を指定することもできますが、そうすることで WinZip® や他の Windows Zip 製品が Zip ファイルで正しく動作しなくなる可能性があります。指定した名前のZipファイルが存在しない場合は、WZZIPがファイルを作成します。

listfile
@listfile は、Zip ファイルに追加するファイルのリストを含むテキストファイルの名前です。listfile の各行には一つのファイル名を含めることができます。これには、ドライブレターとフルパスまたはパーシャルパスを含めることができます。ドライブレターが指定されていない場合は、現在のドライブが想定されます。パスが指定されていない場合は、指定されたドライブまたはカレントドライブ内のカレントディレクトリが想定されます。部分パスが提供された場合は、指定されたドライブまたはカレント・ドライブのカレント・ディレクトリからの相対パスであると仮定されます。
ファイル名には、ワイルドカードを含めることもできます。ワイルドカード指定の「*」は、「*.*」、すなわちすべてのファイルを意味するものとする。ワイルドカード指定の “*. “は、”拡張子のないすべてのファイル “を意味します。
スペースを含むファイル名は引用符で囲むことができますが、リストファイルでは必須ではありません。
セミコロン(‘;’)の後に続くテキストは、行の最後まで無視されます。
ここでは、リストファイルの内容の例を示します。

; zipファイルのリスト
info.doc
*.txt ; Zip up all .txt files

files
files は文字通り、Zipファイルに追加される1つ以上のファイルのリストです。ファイル名の指定は listfiles (上記) と同じルールに従いますが、スペースを含むファイル名は二重引用符で囲まなければなりません。

-d (ファイルの削除) が指定されない限り、WZZIP は “*.*” を想定しています。リストファイルかファイルを指定しないと、WZZIP は “*.” (つまりすべてのファイル) とみなします。d は明示的にファイルを指定する必要があります。

wzzip test.zip
⇒カレントフォルダ内のすべてのファイルをZipファイルtest.zipに追加します(.とします)。

wzzip test.zip *.*
⇒ カレントフォルダ内の全てのファイルをZipファイルtest.zipに追加します。

wzzip test.zip *.txt
⇒ 拡張子が.txtのすべてのファイルをZipファイルtest.zipに追加します。

wzzip test.zip abc.txt def.txt
⇒ test.zipにabc.txtとdef.txtを追加します。

wzzip -xabc.txt test.zip *.txt
⇒ abc.txt を除き、拡張子が.txtのファイルをすべてtest.zipに追加します。

wzzip -rp test.zip d:\docs*.txt
⇒ D:\Docs にある拡張子が.txtの全てのファイルとそのサブフォルダをZipに追加します。D:D:\Docsへの相対パスが全てのファイルに格納されます。

wzzip -u test.zip @zipit.lst
⇒ テキストファイル zipit.lst に名前があるファイルをすべて更新します。

wzzip -v test.zip
⇒ test.zipの内容を一覧表示します。

詳しくはヘルプファイル(英語)をご覧ください。

Share this post