使用7zip的命令行版本创建存档时如何排除隐藏目录?
我试过 -x!".*" ,但那没用 .
-x!".*"
如果希望它与子目录中的文件匹配,则需要将 r ("recurse")标志添加到 -x 选项 .
r
-x
例如,以下内容从 folder/ 下的整个目录树创建归档,但以点开头的任何文件除外:
folder/
7z a -xr'!.*' archive.7z folder/
我在Windows 7 64bit 7zip上遇到了同样的问题 .
做了一些研究后,我发现了以下几点:
1)单/双引号'“在Windows上不起作用 - 7zip说错误的wirdcard
2)不能基于文件/文件夹属性进行排除 - 只有选项可以通过通配符排除或制作排除列表 .
3)在-x选项中,文件表示为<path> \ <filename.ext>,文件夹表示为<path> \ <folder> /(末尾带有斜杠)
4)格式1:用! mark(直接用命令模式)你可以给出类似的东西:
a) 7z a -xr!<path>\<folder to exclude>/ archive.7z <zip folder>/
这会从递归的zip文件夹中的任何路径中排除.svn文件夹
b) 7z a -xr!*\.svn/ archive.7z <folder>/
5)格式2:使用@符号你可以给出这样的排除列表:
a) 7z a -xr@<7z exclude list file> <archive name>.7z <folder>/
排除列表文件可以包含的位置:
*\.svn/ *\output/ *\Document/ *\Measurements/ *.xlsx *.bak
我最喜欢的选择是使用排除列表
这可以用于忽略隐藏文件... 7z.exe a -xr!.git \ -xr!*〜“ . zip”
3 回答
如果希望它与子目录中的文件匹配,则需要将
r
("recurse")标志添加到-x
选项 .例如,以下内容从
folder/
下的整个目录树创建归档,但以点开头的任何文件除外:我在Windows 7 64bit 7zip上遇到了同样的问题 .
做了一些研究后,我发现了以下几点:
1)单/双引号'“在Windows上不起作用 - 7zip说错误的wirdcard
2)不能基于文件/文件夹属性进行排除 - 只有选项可以通过通配符排除或制作排除列表 .
3)在-x选项中,文件表示为<path> \ <filename.ext>,文件夹表示为<path> \ <folder> /(末尾带有斜杠)
4)格式1:用! mark(直接用命令模式)你可以给出类似的东西:
这会从递归的zip文件夹中的任何路径中排除.svn文件夹
5)格式2:使用@符号你可以给出这样的排除列表:
排除列表文件可以包含的位置:
我最喜欢的选择是使用排除列表
这可以用于忽略隐藏文件... 7z.exe a -xr!.git \ -xr!*〜“ . zip”