我需要处理一个 zip 存档,它本身包含所有遵循相同结构的 zip 存档:
main.zip/
foo-1.txt
foo-1.zip/
...
tests/
...
bar-1.txt
bar-1.zip/
...
tests/
...
bar-2.txt
bar-2.zip/
...
tests/
...
foobar-1.txt
foobar-1.zip/
...
tests/
...
我想将txt
文件和tests
目录提取到这样的结构中:
foo/
1/
submission.txt
tests/
bar/
1/
submission.txt
tests/
2/
submission.txt
tests/
foobar/
1/
submission.txt
tests/
我设法将目录结构和文本文件放到正确的位置:
<target name="extract submissions">
<copy todir="${basedir}">
<zipfileset refid="submissions.zip"/>
<mapper type="regexp" from="(.*)-(.*)\.txt" to="\1/\2/\submission.txt"/>
</copy>
</target>
但是现在我被困住了如何访问内部拉链内的测试目录。我尝试了一个中间步骤,将内部拉链复制到测试目录应该结束的地方。但是如何在不知道其确切路径的情况下访问 zip 存档的内容?