如何从使用Ant <concat>?</concat>创建的二进制文件中提取

时间:2014-04-10 22:54:20

标签: ant concat

我有一个使用Ant&lt; concat&gt;创建的二进制文件任务:

<target name="bun.create">
    <concat destfile="final.bun" binary="yes">
        <filelist dir="scripts/" files="script.sh"/>
        <filelist dir="working/" files="files.tgz"/>
    </concat>
    <chmod file="final.bun" perm="+x"/>
</target>

我有final.bun文件,我想知道如何从中提取script.sh和files.tgz而不执行它?我知道unzip命令不起作用。

1 个答案:

答案 0 :(得分:0)

我认为没有办法做到这一点 - 至少不容易。我确定有一些旧的Unis负责人可以使用dd实用程序来执行此操作,但这仍然是一个黑客。你所做的是创建一个并不存在的文件格式。这就像将Word文档与Excel文档连在一起一样。

事实上,我甚至不确定<concat>任务是否会将二进制文件粉碎成难以理解的混乱,因为它试图连接它。

如果必须将两个文件放在一起,请使用<zip/><tar/>任务将两个文件合并在一起。是的,我知道files.tgz已经是压缩存档,但这是将这两个文件放在一起的最佳方式。