【问题标题】:Unzip with apache ant用 apache ant 解压
【发布时间】:2013-12-04 12:38:43
【问题描述】:

我有一个包含一些 .zip 文件的文件夹,每个文件夹都有相同的文件名。可以使用 apache ant 将它们全部解压缩,编辑某些特定文件并将其压缩回来吗?试着像这样解压

<unzip dest = "temp">
    <fileset dir="${basedir}/libs">
        <include name="*.prpt" />
    </fileset>
</unzip>

问题是我无法从文件集中引用文件,另外它会相互覆盖。

【问题讨论】:

  • ${basedir}/bmo 目录下是否有 *.prpt 文件
  • 是的... .prpt 这是一个类似 zip 的存档
  • 这是什么? .prpt 文件?我认为 ant unzip 任务只能解压缩这些文件类型 - zip、war 和 jar。能不能换个文件扩展名试试?
  • 我试图解压缩一个 .prpt 文件...它正在工作...没关系...给我一个提示如何使用 .zip 文件执行此操作。
  • 我无法清楚地理解它 - '问题是我无法从文件集中引用文件,另外它会相互覆盖。'

标签: apache ant zip tar unzip


【解决方案1】:

我不确定这是否是您所期望的,因为您的问题有点令人困惑,我猜是这样。

<target name="find.zips">
<foreach target="unpack.zip" param="foreach.zip" inheritall="true">
    <fileset dir="${basedir}" includes="*.prpt"/>
</foreach>
</target>
<target name="unpack.zip">
  <script language="javascript">
           <![CDATA[
               name = project.getProperty("foreach.zip");
               index = name.lastIndexOf(".prpt");
               zipname = name.substring(index+1);
               project.setProperty("foreach.zipname",zipname);
          ]]>
       </script>
  <unzip src="${foreach.zip}" dest="tmp/zipsrc/${foreach.zipname}/"/>
</target>

希望对您有所帮助。干杯。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多