同时使用 zip 与 -T 和 --password。

同时使用 zip 与 -T 和 --password。

我正在从我编写的应用程序调用该命令。

zip -rm9T --password pass123 /home/cats.zip /home/cats-data/

我正在为档案设置密码,并指定在创建档案后使用 -T 开关检查档案的完整性。

问题是这两件事不能很好地协同工作。

归档部分进展顺利,但是当它尝试检查档案的完整性时,它不知道密码并希望密码来自标准输入...我已经给了它密码...我不知道为什么它再次需要它...并且以如此不方便的方式......

我怎样才能让它工作?

答案1

似乎没有好的方法来旁路不幸的是,应用程序存在此限制zip。但是,如果您正在编写此脚本好的解决方法是使用该unzip实用程序在脚本的后续行中测试 zip 文件。

因此,您将得到类似以下内容的内容(省略 选项-Tzip

zip -rm9 --password pass123 /home/cats.zip /home/cats-data/
unzip -t -P pass123 /home/cats.zip

这应该就能实现你的目标了!

笔记:

我使用过的选项unzip有:

  • -t测试存档文件。此选项提取内存中的每个指定文件,并将扩展文件的 CRC(循环冗余校验,增强型校验和)与原始文件存储的 CRC 值进行比较。
  • -P使用密码解密加密的 zip 文件条目(如果有)。

相关内容