zipコマンドでパスワード付きzip圧縮【備忘録】

業務委託で仕事をしていると毎月作業報告書を提出するのですが、貰った作業報告書のフォーマットに記入して、再度パスワード付きでzip圧縮しようとするとエラーになってしまう状況に出くわしました。

毎回、対応手順を忘れてしまうので備忘録として残そうと思います。

zipコマンドでパスワード付きファイル圧縮【備忘録】

最初、[control]+クリックから「〜を圧縮」でzipファイルにしてからzipcloakコマンドで暗号化しようとしたら以下のようなエラーが出てしまいました。

zipcloak warning: unexpected signature on disk 0 at 24146

zipcloak warning: archive not in correct format: ファイル名
zipcloak warning: (try -F to attempt recovery)
zipcloak error: Zip file structure invalid (ファイル名)

調査したところ、おそらくの原因は元のファイルがWindowsPCで作成・圧縮され、それをMacOS上で再圧縮しようとしたことによるフォーマット上の不都合によるもののようです。

で、結局zipcloakは諦めて、以下のように、zipコマンド+[-er]オプション指定でパスワード付きzipファイルを作りました。

zip -er 出力ファイル名(パス) 入力ファイル名(パス)
実例)デスクトップ上のエクセルファイルを暗号化zip圧縮する例
% cd Desktop
% ls
test.xlsx
% zip test.zip test.xlsx
Enter password: 
Verify password: 
  adding: test.xlsx (deflated 28%)
% ls
test.xlsx				test.zip

以上、同じ問題にぶち当たった人の一助になれば幸い。