使用7z压缩目录中的所有内容,除了一个文件或一个文件类型

时间:2012-11-18 23:17:19

标签: zip cmd 7zip

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

7z a -tzip files.zip *

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

2 个答案:

答案 0 :(得分:18)

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

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

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

-x!foo.txt

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

-x!*.html

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

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

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

7za a -tzip files.zip * -x!FILENAME -x!*.extension

答案 1 :(得分:3)

如果您使用批处理脚本,请不要忘记逃避!标记

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

花了我很长时间才发现:)

谢谢。