Bye Bye Moore

猫マンション建築の野望を胸に零細事業主として資本主義の荒波に漕ぎ出したアラサー男の技術メモ

パス付きのzipファイルをCLIで扱う

コンプライアンス重視なご時世、パス付きZipファイルを望まれるケースが結構あります。
そこいらのソフトで固めるのも良いですが、ここは折角なので自動化してみませう

次のようなコマンドを入力し、お試しファイルを生成します。
ちなみに全部空です。

$ mkdir testzip
$ cd testzip
$ touch `seq -f "%02g.txt" 1 10`
$ ls
01.txt  02.txt  03.txt  04.txt  05.txt  06.txt  07.txt  08.txt  09.txt  10.txt
$ cd ..

圧縮する:zip -reP passworrd output.zip srcDir

折角なので再帰的に圧縮させます。
子ディレクトリまでいけます。

$ zip -reP password testzip.zip testzip
  adding: testzip/ (stored 0%)
  adding: testzip/01.txt (stored 0%)
  adding: testzip/02.txt (stored 0%)
  adding: testzip/03.txt (stored 0%)
  adding: testzip/04.txt (stored 0%)
  adding: testzip/05.txt (stored 0%)
  adding: testzip/06.txt (stored 0%)
  adding: testzip/07.txt (stored 0%)
  adding: testzip/08.txt (stored 0%)
  adding: testzip/09.txt (stored 0%)
  adding: testzip/10.txt (stored 0%)

解凍する:unzip -eP password input.zip

$ unzip -eP password testzip.zip 
Archive:  testzip.zip
   creating: testzip/
 extracting: testzip/01.txt          
 extracting: testzip/02.txt          
 extracting: testzip/03.txt          
 extracting: testzip/04.txt          
 extracting: testzip/05.txt          
 extracting: testzip/06.txt          
 extracting: testzip/07.txt          
 extracting: testzip/08.txt          
 extracting: testzip/09.txt          
 extracting: testzip/10.txt