抽出時にメッセージを印刷するZIPファイルを作成する方法は?

抽出時にメッセージを印刷するZIPファイルを作成する方法は?

最近、実行時にstdoutにカスタムメッセージを印刷するzipファイル(単一ファイルを含む)が見つかりました。

unzip archive.zip

もう議論は必要ありません。

私はこれが可能であることを知りませんでした。 ZIP仕様でファイルのコメントを読みましたが、CLIでは動作が異なるようです。

カスタムメッセージを使用しzip -cて入力すると、自分のカスタムメッセージが何らかの形でアーカイブに圧縮されていることがわかりますが、ファイルを解凍すると自動的に印刷されません。

を使用すると、私のメッセージを見ることができますが、元のファイルの仕組みはunzip -lそうではありません。カスタムメッセージが最初に印刷され、次にアーカイブの内容が一覧表示されます。ファイルコメントの実験とは異なり、コメントはリストに印刷されません。archive.zipunzip -l archive.zip

だから私の質問は次のようになります抽出時にカスタムメッセージを印刷するZIPファイルを作成する方法は?(そしてファイルのコメントでなければ、この関数を何と呼びますか?)

答え1

私はあなたが探していると思います--archive-comment。マンページから引用:

       -z
       --archive-comment
              Prompt  for a multi-line comment for the entire zip archive.  The comment is ended by a line containing just a period, or an end of file condition (^D on Unix, ^Z on MSDOS, OS/2, and
              VMS).  The comment can be taken from a file:

                     zip -z foo < foowhat

zip --archive-comment -c -r test testユーザーに、アーカイブ全体の特別な説明を入力するように求められます。

抽出中(メッセージは「Hello」です):

unzip ../test.zip
Archive:  ../test.zip
Hello.
   creating: test/
 extracting: test/test.txt

関連情報