15

我想压缩除一个文件以外的所有内容

7z a -tzip files.zip *

这将压缩我当前目录中的所有文件..有没有办法告诉它不要压缩一个文件或一种文件类型?

4

2 回答 2

24

根据 7za 命令行帮助,您可以使用 -x 开关来执行此操作:

-x[r[-|0]]]{@listfile|!wildcard}: eXclude filenames

要排除文件 foo.txt,您将添加:

-x!foo.txt

要排除所有 .html 文件 (*.html),您需要添加:

-x!*.html

您可以添加多个 -x 条目以在一个 zip 命令中排除多个文件名和/或通配符。添加以下内容将排除 foo.txt 和 *.html:

-x!foo.txt -x!*.html

因此,对于您的示例,这会将所有文件添加到 files.zip 中,但名为“FILENAME”或与 *.extension 通配符匹配的文件除外:

7za a -tzip files.zip * -x!FILENAME -x!*.extension
于 2012-11-19T23:39:04.440 回答
9

如果您使用的是批处理脚本,请不要忘记转义!标记。

7z a -xr^^!*.xml "dest_dir.zip" "Source_dir"

我花了很长时间才知道:)

谢谢你。

于 2017-03-14T15:45:26.013 回答