我需要将一个文件集合从不同的位置压缩到一个zip中,保持它们的初始关系。例如,我只需要使用以下文件夹结构的a1和b2
Top -- A -- a1
-- a2
-- B -- b1
b2我希望压缩文件看起来像:
Top -- A -- a1
-- B -- b2我怎样才能用AntBuilder做到这一点呢?我试过:
def deploymentFiles =“$HOME//a.tsv”,“$HOME//b.tsv”, def ant =新的AntBuilder() def zipFile =新文件(“deployment_zipFile.zip”) ant.zip( destFile:"${zipFile.getAbsolutePath()}“) {文件集( dir:"$HOME”){ deploymentFiles.each {f ->包括: deploymentFiles.join(",“)}}
但这只是压缩了整个主文件夹。
发布于 2013-02-20 11:49:22
给定这样的目录结构:
-- home
|-- Songs
| |-- A
| |-- a1.tsv
| \-- a2.tsv
|-- B
|-- b1.tsv
\-- b2.tsv然后,这个代码:
def HOME = 'home'
def deploymentFiles = [ 'Songs/A/a1.tsv', 'Songs/B/b1.tsv' ]
def zipFile = new File("deployment_zipFile.zip")
new AntBuilder().zip( basedir: HOME,
destFile: zipFile.absolutePath,
includes: deploymentFiles.join( ' ' ) )创建一个压缩文件,该文件在解压时包含:
unzip ../deployment_zipFile.zip
Archive: ../deployment_zipFile.zip
creating: Songs/
creating: Songs/A/
inflating: Songs/A/a1.tsv
creating: Songs/B/
inflating: Songs/B/b1.tsv https://stackoverflow.com/questions/14978846
复制相似问题