2016-12-02 113 views
0

我遇到问题。由* .bat压缩文件,但要保留旧文件夹结构

foo -- ab 
    | |--bx -- bc 
    | |  |_xr  
    | |--xb 
    | 
    |--bb -- bc 
    |  |- bx -- bc 
    |  |- xr 

创建文件zip_files.bat目录里面

IF EXIST ab.zip del /F ab.zip 
IF EXIST bb.zip del /F bb.zip 
jar -cMf ab.zip ab 
jar -cMf bb.zip bb 

当前,我可以压缩文件ab.zip,然后解压ab.zip,它是这样的(它不喜欢原始文件夹结构):

ab -- ab -- bc 
     |_bx -- bc 
     |  |_xr  
     |_xb 

我想有文件ab.zip,解压缩文件时ab.zip有:

bx -- bc 
    |_xr  
xb 

我也想有文件bb.zip

+1

什么工具,你用解压? – lit

回答

0

可以使用-C选项:

-C dir:在创建(c)或更新(U)的JAR文件,此选项暂时更改目录,同时处理由文件操作数指定的文件。

根据您目前的jar -cMf ab.zip ab你得到包含以下项目的zip文件:

ab/ 
ab/xb/ 
ab/bx/ 
ab/bx/_xr/ 
ab/bx/bc/ 

如果使用jar -cMf ab.zip -C ab .,您可以:

xb/ 
bx/ 
bx/_xr/ 
bx/bc/ 

然后检查你使用的工具解压缩提取它们在正确的文件夹中,而不是创建一个子文件夹(看起来你提取ab.zipab,创建两个ab folders)。

0

文件夹里面放文件zip_files.bat具有内容:

cd ab 
jar -cMf ../ab.zip bx xb 
cd .. 

cd bb 
jar -cMf ../bb.zip bc bx xr 
cd ..