コマンドラインでzipファイルにパスワードをつける方法

NO IMAGE

仕事で、zipファイルにパスワードをつけたいという要望がありました。

コマンドラインから簡単に実現することができるので、メモとして残しておきます。

検証環境

macOS High Sierra, bash 3.2.57

※ おそらくLinux環境でも動作すると思います。

コマンド

以下のような書式で、コマンドを実行します。

zip -e [圧縮後のファイル名] [圧縮前のファイル名(複数可)]

a.txtとb.txtの2ファイルを、パスワードつきのsecret.zipというファイルに圧縮するには、以下のようなコマンドを実行します。

zip -e secret.zip a.txt b.txt

実行すると、以下のように表示されます。

Enter password:

ここで、設定したいパスワードを入力します。(キーボードを打っても文字は表示されませんが、入力されています。)

パスワードを入力し終わったら、エンターキーを押します。すると、以下のように表示されます。

Verify password:

ここでは、先ほどのパスワードを入力してください。間違えると、エラーが発生してしまうので、気をつけてください。

成功すると、以下のように表示されます。これで、パスワードつきのzipファイルを作成することができました。

  adding: a.txt (stored 0%)
adding: b.txt (stored 0%)

実際に、macのFinderからzipファイルを開いてみると、以下のようにダイアログが表示されます。ここで、設定したパスワードを入力すれば、開くことができます。

補足

以下のように書くこともできます。

zip --encrypt secret.zip a.txt b.txt

詳細は、man zip でご確認ください。